Merhabalar, bu post altında Java 8 itibariyle gelen ve gelecek olan yenilikleri paylaşıyorum.
#Java18 Features:
- UTF-8 by Default
 - Simple Web Server
 - Code Snippets in Java API Doc
 - Reimplement Core Reflection with Method Handles
 - Vector API
 - Internet-Address Resolution SPI
 - Foreign Function & Memory API
 - Pattern Matching for switch
 
#Java17 Features (Long Term Support) :
- Restore Always-Strict Floating-Point Semantics
 - Enhanced Pseudo-Random Number Generators
 - New macOS Rendering Pipeline
 - macOS/AArch64 Port
 - Deprecate the Applet API for Removal
 - Strongly Encapsulate JDK Internals
 - Pattern Matching for switch
 
#Java16 Features:
- Vector API
 - Enable C++14 Language Features
 - Migrate from Mercurial to Git
 - Migrate to GitHub
 - Concurrent Thread-Stack Processing
 - Unix-Domain Socket Channels
 - Alpine Linux Port
 - Elastic Metaspace
 - Windows/AArch64 Port
 
#Java15 Features
- Sealed Classes and Interfaces
 - EdDSA Algorithm
 - Hidden Classes
 - Pattern Matching for instanceof
 - Removed Nashorn JavaScript Engine
 - Reimplement the Legacy DatagramSocket API
 - Records (Second Preview)
 - Text Blocks become a standard feature
 
#Java14 Features
- Pattern Matching for instanceof
 - Text Blocks
 - Helpful NullPointerExceptions
 - Records
 - Switch Expressions
 - Packaging Tool
 - NUMA-Aware Memory Allocation for G1
 - JFR Event Streaming
 - Non-Volatile Mapped Byte Buffers
 - Remove the Pack200 Tools and API
 
#Java13 Features:
- Text Blocks (Preview)
 - Switch Expressions Enhancements (Preview)
 - Reimplement the Legacy Socket API
 - Dynamic CDS Archive
 - ZGC: Uncommit Unused Memory
 - FileSystems.newFileSystem() Method
 - DOM and SAX Factories with Namespace Support
 
#Java12 Features:
- Collectors.teeing() in Stream API
 - String API Changes
 - Files.mismatch(Path, Path)
 - Compact Number Formatting
 - Support for Unicode 11
 - Switch Expressions (Preview)
 
#Java 11 Features (Long Term Support):
- HTTP Client API
 - Launch Single-File Programs Without Compilation
 - String API Changes
 - Collection.toArray(IntFunction)
 - Files.readString() and Files.writeString()
 - Optional.isEmpty()
 
#Java10 Features:
- Local Variable Type Inference
 - Time-Based Release Versioning
 - Garbage-Collector Interface
 - Parallel Full GC for G1
 - Heap Allocation on Alternative Memory Devices
 - Consolidate the JDK Forest into a Single Repository
 
#Java9 Features:
- Java platform module system
 - Interface Private Methods
 - HTTP 2 Client
 - JShell
 - Platform and JVM Logging
 - Process API Updates
 - Collection API Updates
 - Improvements in Stream API
 - Multi-release JAR Files
 - @Deprecated Tag Changes
 - Stack Walking
 
#Java8 Features (Long Term Support):
- Lambda expression
 - Stream API
 - Functional interface
 - Default and static methods
 - Optional class
 - Nashorn – JavaScript runtime engine
 - Unsigned Integer Arithmetic
 - Repeating annotations
 - New Date and Time API
 
Kaynak : Turkey Java User Group
