Learn Java
Structured lessons from the basics up — follow the path below in order, at your own pace.
-
1
Level 1 — Beginner Beginner 27 lessons
Start here if you have never written a line of Java before. Work through these lessons in order — each one builds on the last.
Lessons in this module
What Is Java? Why Learn Java? Installing the JDK Setting Up Your Development Environment Your First Java Program How Java Code Runs: Compiling and the JVM Variables & Data Types Type Casting & Conversion Operators Strings String Formatting Reading User Input Conditionals Switch Statements & Expressions Loops Arrays Multidimensional Arrays Methods Method Overloading Introduction to Classes & Objects Constructors Instance vs. Static Members Access Modifiers Packages & Imports ArrayList & Collections Basics Comments & Code Style Debugging Basics: Compiler Errors vs. Exceptions -
2
Beginner Projects Beginner 1 lesson
Build these with nothing but what Level 1 covered — a class with a main method, Scanner for input, and the standard library. 1. Command Line...
-
3
Level 2 — Intermediate Intermediate 20 lessons
These lessons cover object oriented programming in depth, the collections framework, lambdas and streams, and the everyday tools of a workin...
Lessons in this module
Object-Oriented Programming: The Big Picture Inheritance Polymorphism Abstraction & Abstract Classes Interfaces Encapsulation in Practice Enums Exception Handling Custom Exceptions Generics The Collections Framework Comparable & Comparator Lambda Expressions & Functional Interfaces Streams File I/O Working with Dates and Times Multithreading Basics Build Tools: Maven and Gradle Unit Testing with JUnit Debugging & Logging -
4
Intermediate Projects Intermediate 1 lesson
Build these using OOP, collections, streams, and file I/O from Level 2. 1. Bank Account Simulator Model Account encapsulated balance , depos...
-
5
Level 3 — Advanced Advanced 17 lessons
These lessons cover modern Java language features, concurrency in depth, the JVM itself, and how Java is used to build and ship real backend...
Lessons in this module
Advanced Generics & Bounded Type Parameters Advanced Streams & Collectors Concurrency in Depth Records Sealed Classes Pattern Matching Design Patterns in Java Reflection & Annotations Memory Management & Garbage Collection JVM Internals Overview Networking Basics JDBC & Database Access Building a REST API with Spring Boot Testing Strategies Performance Optimization & Profiling Packaging & Deployment Security Fundamentals -
6
Advanced Projects Advanced 1 lesson
Build these using streams, concurrency, and the JVM/deployment knowledge from Level 3. 1. Multi Threaded Word Counter Given a folder of text...
-
7
What You Should Know Now — and What's Next 1 lesson
What You Should Know Now Core syntax: variables, primitive types, control flow, arrays, methods Object oriented programming: classes, inheri...