Learn Java
Learn Java from your first program to modern Java 21. Every lesson explains one idea in plain language and shows complete programs with their real output, and most lessons end with an exercise so you learn by doing.
Progress is saved in this browser. Accounts are coming later.
- Lessons available
- 52
- In the full course
- 52
- Beginner
Start from zero. No experience needed.
- Intermediate
Combine ideas to solve real problems.
- Advanced
The techniques used in professional work.
Course syllabus
All 52 lessons are available. Start anywhere, or follow the parts in order.
Part 1 · Beginner
Java Fundamentals
Install the JDK, write your first program, and learn how values, variables and types work.
Part 2 · Beginner
Control Flow
Make decisions with conditions and repeat work with loops.
Part 3 · Beginner
Methods
Organize code into reusable methods, pass data in and out, and understand scope.
Part 4 · Beginner
Arrays and Strings
Store collections of values, work with text, and use Java's wrapper classes.
Part 5 · Intermediate
Object-Oriented Programming
Model real things with classes, constructors, inheritance, interfaces, records and enums.
Part 6 · Intermediate
Collections Framework
Use Java's lists, sets, maps and queues, and sort them your way.
Part 7 · Advanced
Advanced Java
Exceptions, files, generics, lambdas, streams, concurrency and modern Java features.
Part 8 · Intermediate
Java Interview Preparation
Common Java interview questions and coding challenges, with explained answers.
Keep going with Java
Become a Better Programmer
Get new tutorials, coding challenges, and cheat sheets.