Java Evolution
Java releases a new LTS version every three years. Understanding what changed in each version — especially Java 8, 11, 17, and 21 — is critical for reading job postings, navigating legacy codebases, and demonstrating senior-level awareness. Interviewers regularly ask "what's new in Java 17/21?" as a quick filter.
What You'll Find Here
Notes are being added. Planned topics:
| Topic | Description |
|---|---|
| Java 8 Features | Lambdas, Streams, Optional, java.time, interface default methods. |
| Java 9–11 Features | JPMS modules, var (Java 10), HTTP Client (Java 11), String API additions. |
| Java 14–17 Features | Records, sealed classes, pattern matching instanceof, text blocks, switch expressions. |
| Java 21 Features | Virtual threads (Project Loom), pattern matching for switch, sequenced collections, record patterns. |
Learning Path
- Java 8 — most Java codebases target Java 8+; lambdas and streams are everywhere. Start here.
- Java 11 — the first LTS after Java 8;
var,isBlank, HTTP Client, andList.ofare commonly used. - Java 17 — the LTS most teams run today; records and sealed classes reshape data modeling.
- Java 21 — the current LTS; virtual threads are a paradigm shift for high-throughput services.
Related Domains
- Functional Programming — lambdas and streams (Java 8) are covered in depth there.
- Object-Oriented Programming — records and sealed classes (Java 17) are OOP topics.
- Multithreading & Concurrency — virtual threads (Java 21) are covered there.