AlgoMaster Logo

Course Roadmap

Last Updated: May 17, 2026

1 min read
27 sections230 chapters
Access:
Difficulty:
Priority:
Section / Chapter
Welcome
Course Roadmap
Course Setup
Join the Community
Introduction to Java
What is Java?
History of Java
Features of Java
JDK, JRE, and JVM
Setting Up Environment
First Java Program
How Java Works
Basic Syntax
Variables & Data Types
Primitive Types
Reference Types
Type Casting
Operators
Input & Output
Comments
Naming Conventions
Control Flow
If-Else Statements
Switch Statement
For Loop
While Loop
Do-While Loop
Enhanced For Loop
Break & Continue
Labeled Statements
Arrays
Arrays Basics
Array Operations
Multidimensional Arrays
Arrays Class
Copying Arrays
Strings
String Basics
String Methods
String Immutability
StringBuilder
StringBuffer
String Formatting
String Comparison
Regular Expressions
Methods
Methods Basics
Method Parameters
Return Types
Method Overloading
Variable Arguments (Varargs)
Recursion
Pass by Value
Object-Oriented Programming
Classes & Objects
Constructors
this Keyword
Access Modifiers
Getters & Setters
static Keyword
final Keyword
Initializer Blocks
Inner Classes
Anonymous Classes
Record Classes
Sealed Classes
Inheritance
Inheritance Basics
extends Keyword
super Keyword
Method Overriding
Constructor Chaining
Object Class
instanceof Operator
Polymorphism
Polymorphism Basics
Compile-Time Polymorphism
Runtime Polymorphism
Dynamic Method Dispatch
Covariant Return Types
Abstraction
Abstract Classes
Abstract Methods
Interfaces
Default Methods
Static Interface Methods
Private Interface Methods
Functional Interfaces
Marker Interfaces
Encapsulation
Encapsulation Basics
Data Hiding
Immutable Classes
Packages & Modules
Packages
import Statement
Static Import
Java Modules (JPMS)
module-info.java
Exception Handling
Exception Basics
try-catch Block
Multiple Catch Blocks
finally Block
throw Keyword
throws Keyword
Checked vs Unchecked Exceptions
Custom Exceptions
try-with-resources
Exception Chaining
Collections Framework
Collections Overview
Collection Interface
List Interface
ArrayList
LinkedList
Vector
Stack
Set Interface
HashSet
LinkedHashSet
TreeSet
Queue Interface
PriorityQueue
Deque Interface
ArrayDeque
Map Interface
HashMap
LinkedHashMap
TreeMap
Hashtable
Concurrent Collections
Collections Utility Class
Comparable & Comparator
Iterator & ListIterator
Generics
Generics Basics
Generic Classes
Generic Methods
Bounded Type Parameters
Wildcards
Type Erasure
Generic Restrictions
Lambda & Streams
Lambda Expressions
Method References
Streams Basics
Stream Operations
Intermediate Operations
Terminal Operations
Collectors
Parallel Streams
Optional Class
File I/O
File Class
FileInputStream & FileOutputStream
FileReader & FileWriter
BufferedReader & BufferedWriter
PrintWriter
Scanner Class
Serialization
Deserialization
NIO Package
Paths & Files
File Channels
Multithreading
Threads Basics
Creating Threads
Thread Lifecycle
Thread Methods
Thread Priority
Synchronization
Synchronized Blocks
volatile Keyword
Deadlock
Thread Communication
Thread Pools
Executor Framework
Callable & Future
CompletableFuture
Locks & Conditions
ReentrantLock
ReadWriteLock
Semaphore
CountDownLatch
CyclicBarrier
Fork/Join Framework
Atomic Classes
Virtual Threads (Project Loom)
Java Memory Model
Memory Model Basics
Heap & Stack
Garbage Collection
GC Algorithms
Memory Leaks
Weak, Soft & Phantom References
Annotations
Annotations Basics
Built-in Annotations
Custom Annotations
Retention Policy
Annotation Processing
Reflection
Reflection Basics
Class Object
Inspecting Classes
Accessing Fields & Methods
Creating Instances Dynamically
Reflection Use Cases
Networking
Networking Basics
InetAddress
URL Class
URLConnection
Sockets
Server Sockets
Datagram Sockets (UDP)
HTTP Client
JDBC
JDBC Basics
JDBC Drivers
Connecting to Database
Statement Interface
PreparedStatement
CallableStatement
ResultSet
Transactions
Connection Pooling
Date & Time API
Date & Time Overview
LocalDate
LocalTime
LocalDateTime
ZonedDateTime
Instant
Duration & Period
DateTimeFormatter
Modern Java Features
var Keyword (Java 10)
Text Blocks (Java 15)
Switch Expressions (Java 14)
Pattern Matching for instanceof (Java 16)
Pattern Matching for switch (Java 21)
Records (Java 16)
Sealed Classes & Interfaces (Java 17)
Unnamed Patterns (Java 22)
Sequenced Collections (Java 21)
String Templates (Java 21)
Best Practices
Coding Standards
Effective Java Tips
Clean Code Principles
Common Pitfalls
Performance Optimization
Testing Basics
JUnit Testing
Debugging Techniques