Experience the new features from JDK 1.8 to the latest version (24 Preview).
- JDK 8 (LTS) Lambdas, Type Annotations, etc
- JDK 9 Modules, Private Methods in interfaces, etc
- JDK 10 Local variable type interface
- JDK 11 (LTS) Local variables syntax for lambda parameters
- JDK 12 No new language features
- JDK 13 No new language features
- JDK 14 Switch expressions
- JDK 15 Text blocks
- JDK 16 Records, Patterns, Local enums and interfaces
- JDK 17 (LTS) Sealed types, always-strict floating-point semantics
- JDK 18 JavaDoc snippets
- JDK 19 No new language features
- JDK 20 No new language features
- JDK 21 (LTS) Record patterns, Pattern matching for switch, String templates, Unnamed classes and instance main methods, etc
- JDK 22 Unnamed variables and patterns
- JDK 23 (Preview) Markdown documentation comments, Primitive types in patterns, Implicitly declared classes, etc
- JDK 24 (Preview) Stream gathers, Flexible constructor bodies, Simple source files, etc
https://www.oracle.com/java/technologies/javase/jdk-relnotes-index.html
- JDK 9 Modules
- JDK 13 CDS
- JDK 15 Hidden Classes, Sealed Classes
- JDK 16 jpackage tool
- JDK 22 Stream Gather