Java 301 - Advanced Concepts
Course Summary
Learn advanced Java programming concepts, including exception handling, multithreading, input/out, generics, lambda expressions, method references, JDBC, and advanced data structures and algorithms.
11 Sections · 159 Pages · By Ryan Desmond
-
Level
Intermediate to Advanced
-
Duration
100 Hours. Or, ~1 month of dedicated learning @ 15-20 hours per week
-
What's included
84 lessons. 23 videos. 9 quizzes. 100+ code samples. Dozens of challenges. 2-3 portfolio projects.
-
Certificate
Java 301 Certificate
Unlock this course
$12/month Core Membership
7-day free trial
Unlock all courses
$29/month Pro Membership
7-day free trial
This course is part of the following career track:
-
1) Getting Started
-
2) Exception Handling
-
Uh, Houston, We've Had a Problem
-
Introduction to Java Exception Handling4 min
-
Java Exception Hierarchy3 min
-
Catching Exceptions - Try/Catch/Finally
-
Java: Try Catch7 min
-
Video: Java Try Catch10 min
-
Java: Try Catch Finally4 min
-
Video: Java Try Catch Finally2 min
-
Quiz: Try Catch Finally
-
Code Challenge: Exception Handling3 min
-
Try-With-Resources Teaser3 min
-
Throwing Exceptions
-
Java: Method "Throws" Exception4 min
-
Practice Throwing Exceptions in Java4 min
-
Video: Throwing Exceptions in Java8 min
-
Java Throwable Exception Methods4 min
-
Quiz: Throwing Exceptions
-
Code Playground: Throwing Exceptions3 min
-
Custom Exceptions
-
Custom Exceptions in Java5 min
-
Video: Custom Exceptions9 min
-
Code Playground: Custom TeaPotException3 min
-
Assignments
-
Journal: Exception Handling
-
Labs: Exception Handling3 min
-
Feedback: Java Exception Handling
-
-
3) Input / Output (I/O)
-
Read & Write Files with I/O
-
Introduction: Read & Write Files with Java I/O Streams6 min
-
Working with Byte Streams
-
Java Input Streams5 min
-
Java Buffered Input Streams6 min
-
Video: Byte Streams41 min
-
Code Playground: Byte Streams3 min
-
Quiz: Byte Streams
-
Working with Character Streams
-
Reading & Writing Files with Character Streams7 min
-
Try-With-Resources4 min
-
Video: Character Streams28 min
-
Code Playground: Character Streams3 min
-
Working with .CSV Files
-
Can Java Read a CSV File?9 min
-
Assignments
-
Journal: I/O with Java
-
Quiz: Java I/O
-
Labs: Java Input/Output (I/O)3 min
-
Feedback: Java I/O
-
-
4) Multithreading
-
What is Java Multithreading?8 min
-
Java Threads: Implementing Runnable
-
Java Threads: Implement Runnable Interface11 min
-
Video: Creating Threads with Java Runnable18 min
-
Code Playground: Implementing Runnable3 min
-
Mini Challenge: Implement Runnable3 min
-
Java Threads: Extend Thread
-
Java Threads: Extend the Java Thread Class5 min
-
Video: Extending the Java Thread Class11 min
-
Code Playground: Extending Thread3 min
-
Mini Challenge: Extend Thread3 min
-
More on Multithreading
-
Java Thread Priority5 min
-
Java Thread Join5 min
-
Synchronizing Java Threads5 min
-
Threads: wait() and notify()4 min
-
Common Problems with Multithreading
-
Thread Deadlock13 min
-
Thread Livelock11 min
-
Thread Race Condition10 min
-
Assignments
-
Journal: Java Multithreading
-
Labs: Multithreading3 min
-
Quiz: Multithreading
-
Feedback: Multithreading
-
-
5) Generics
-
Generic Data Types
-
What is Java Generics?8 min
-
Java Generics and Primitive Types4 min
-
Generic Classes
-
What is a Generic Class in Java?7 min
-
Video: Generic Classes10 min
-
Code Playground: Generic Classes3 min
-
Mini Challenge: Generic Java Classes3 min
-
Generic Methods
-
What is a Generic Java Method5 min
-
Video: Generic Methods8 min
-
Code Playground: Generic Methods3 min
-
Mini Challenge: Generic Methods3 min
-
Bounded Generic Types
-
Generics with Bounded Types5 min
-
Code Playground: Bounded Generic Types3 min
-
Mini Challenge: Bounded Types3 min
-
Assignments
-
Journal: Generic Types in Java
-
Quiz: Generics
-
Labs: Generics3 min
-
Feedback: Java Generics
-
-
6) Enumerations
-
7) Lambda Expressions & Methods References
-
Anonymous Classes in Java
-
Primer: What is an Anonymous Class in Java6 min
-
Video: Anonymous Inner Classes7 min
-
Code Playground: Anonymous Classes3 min
-
Lambda, Lambda, Lambda!
-
What is a Java Functional Interface?6 min
-
Java Lambda Expressions11 min
-
Video: Java Lambda Expressions15 min
-
Video: Built-In Java Functional Interfaces17 min
-
Code Playground: Lambda Expressions3 min
-
Video: Java Lambdas and Java Threads5 min
-
Code Playground: Lambda Expressions3 min
-
Method References
-
What is a Java Method Reference?5 min
-
Java Method Reference Examples10 min
-
Video: Static Method Reference3 min
-
Code Playground: Static Method References3 min
-
Video: Instance Method References4 min
-
Code Playground: Instance Method References3 min
-
Video: Method References on Constructors2 min
-
Code Playground: Constructor References3 min
-
Java Stream API
-
What is a Java Stream?18 min
-
Video: Java Stream API18 min
-
Code Playground: Java Stream API3 min
-
Assignments
-
Journal: Lambdas & Method References
-
Quiz: Lambda Expressions and Method References
-
Labs: Lambdas, Method References, & Stream API3 min
-
Feedback: Lambdas
-
-
8) SQL & JDBC
-
SQL & Database Course
-
Link: SQL & DBs Course
-
Java Database Connectivity (JDBC)
-
What is JDBC?5 min
-
Using the MySQL JDBC Driver7 min
-
Create a Test Database5 min
-
What is the JDBC Life Cycle?4 min
-
Example JDBC Connection4 min
-
Querying MySQL from Java9 min
-
What is the Java ResultSet?5 min
-
Map a ResultSet to Java Objects8 min
-
Video: Java & SQL33 min
-
Java, Hibernate, and ORMs7 min
-
Assignments
-
Journal: JDBC
-
Quiz: JDBC
-
Labs: JDBC3 min
-
Feedback: JDBC
-
-
9) Data Structures & Algorithms
-
Space Time Complexity
-
Link: Big O Notation
-
Linked Lists
-
Linked Lists in Java13 min
-
Code Playground: Java Linked List3 min
-
Video: Java LinkedLists30 min
-
Link: Custom Java LinkedList Implementation
-
Labs: Java LinkedLists3 min
-
Stacks
-
Stacks in Java8 min
-
Code Playground: Stacks3 min
-
Video: Using Java Stacks5 min
-
Custom Stack Implementation in Java3 min
-
Labs: Java Stacks3 min
-
Queues
-
Queues in Java9 min
-
Video: Java Queues5 min
-
Custom Queue Implementation in Java3 min
-
Labs: Java Queues3 min
-
HashMaps
-
Hashmaps in Java17 min
-
Video: Java HashMaps21 min
-
Custom HashMap Implementation in Java19 min
-
Labs: Java HashMaps3 min
-
Trees
-
Trees in Java5 min
-
Binary Search Tree in Java10 min
-
Custom Binary Search Tree Java Implementation25 min
-
Java Binary Search Tree Traversal9 min
-
Assignments
-
Journal: Java Data Structures
-
Link: Data Structure & Algorithms Course
-
-
10) Capstone Project
-
Prove Your Skills
-
Capstone Project: Introduction11 min
-
Capstone Idea: "MyBudget" App10 min
-
Video: Create New Capstone Project1 min
-
Video: Add App to GitHub2 min
-
Capstone: Database Considerations9 min
-
Video: Capstone Project Demo2 min
-
Capstone: Conclusion, or Beginning?3 min
-
Journal: Capstone Submission
-
-
11) Next Steps & Certificate Request