/JavaExamples

Java Language Feature Examples, Java 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, Java 5 & Java 1. Examples of SOLID Design Principles.

Primary LanguageJavaApache License 2.0Apache-2.0

Java Examples

Java Versions and Features

Version Date JEPs Features
Java 1.0 Jan 1996 OS Independant Programming language, Java Virtual Machine
J2SE 5.0 Sep 2004 Enhanced For Loop, Generics, Enums, Autoboxing
Java SE 6 Dec 2006 Scripting Language Support, Improvements to Web Services
Java SE 7 Jul 2011 Project Coin (Diamond Operator, Strings in Switch), NIO.2
Java SE 8 LTS Mar 2014 56 Functional Programming, Lambda & Streams, Multiple Inheritance
Java SE 9 Sep 2017 91 Modularization - Java Platform Module System
Java SE 10 Mar 2018 12 Local Variable Type Inference, List / Set / Map - CopyOf
Java SE 11 LTS Sep 2018 17 New HTTP Client API, Nest-based access control, Remove JavaFX
Java SE 12 Mar 2019 8 Switch Expressions (Preview)
Java SE 13 Sep 2019 5 Text Blocks (Preview)
Java SE 14 Mar 2020 16 Switch Expressions (Preview in 12 and 13), Pattern Matching for instanceof (Preview)
Java SE 15 Sep 2020 14 Text Blocks (Preview in 13), Sealed Classes (Preview), Hidden Classes
Java SE 16 Mar 2021 17 Record Classes (Preview in 14, 15), Pattern Matching for instanceof, Sealed Classes
Java SE 17 LTS Sep 2021 14 Sealed Classes, Pattern Matching for switch (Preview), Enhanced Pseudo-Random Number Generators
Java SE 18 Mar 2022 9 UTF-8 by default, Simple Web Server, Vector API (Second Incubator)
Java SE 19 Sep 2022 7 Virtual Threads (Preview), Pattern Matching for switch (Third Preview)
Java SE 20 Mar 2023 6 Scoped Values (Incubator), Virtual Threads (Second Preview)
Java SE 21 LTS Sep 2023 15 Record Patterns, Unnamed Patterns and Variables, String Templates (Preview)
Java SE 22 Mar 2024 Pattern Matching (Primitives), Stream Gatherers, Vector API
Java SE 23 Sep 2024 12 Pattern Match (Primitives), Module Import, Simplified Main, Stream Gatherers, Vector API

Java 23 Features

Features

Source: https://openjdk.org/projects/jdk/23/

This project is currently a work in progress. All key examples from Java versions 5 through 23 are expected to be completed by the first week of October 2024.