Some Java knowledge...
- Multi-catch
- The try-with-resources Statement
- Strings in switch Statements
- Underscores in Numeric Literals
- Binary Literals
- Java XML - JAXP, JAXB, and JAX-WS
- Diamonds
- ...
- Removal of PermGen
- Default Methods
- Classes and interfaces have been added to the java.util.concurrent package
- Date-Time Package, a new set of packages that provide a comprehensive date-time model
- Streams
- Lambda Expressions
- Type Annotations
- ...
- The JDK itself has been divided into a set of modules. (project jigsaw)
- JShell
- Private methods in interfaces
- Unified JVM Logging
- Compact Strings
- Stack-Walking API
- Enable GTK 3 on Linux
- Unicode 8.0
- ...
- APIs for Creating Unmodifiable Collections
- Local-Variable Type Inference (var)
- Provides a default set of root Certification Authority (CA) certificates in the JDK.
- Bytecode generation has been improved for enhanced for loops
- Improves G1 worst-case latencies by making the full GC parallel.
- ...
- Unicode 10
- TLS 1.3
- Local-Variable Syntax for Lambda Parameters (var)
- Launch Single-File Source-Code Programs (java HelloWorld.java)
- Standardize the incubated HTTP Client API introduced in JDK 9, via JEP 110, and updated in JDK 10 (JEP 321)
- Low-Overhead Heap Profiling (JVMTI)
- ...
- Unicode 11
- Compact Number Formatting
- New Java Flight Recorder (JFR) Security Events
- ...
- Unicode 12.1
- ...
- Accounting Currency Format Support
- Event Streaming
- Switch Expressions
- Added isEmpty Default Method to CharSequence
- Unicode 13.0
- Hidden Classes
- Text Blocks
- Specialized Implementations of TreeMap Methods
- Pattern Matching for the instanceof Operator
- Strongly Encapsulate JDK Internals by Default
- Unix domain sockets
- Day Period Support Added to java.time Formats
- Add Stream.toList() Method
- ZGC Concurrent Stack Processing
- Concurrently Uncommit Memory in G1
- Records
- Packaging Tool
- Sealed Classes
- New macOS Rendering Pipeline (Apple Metal accelerated rendering API)
- DatagramSocket Can Be Used Directly to Join Multicast Groups
- New API for Accessing Large Icons
- Enhanced Pseudo-Random Number Generators
- Source Details in Error Messages
- Modernization of Ideal Graph Visualizer
- Add java.time.InstantSource
- Hex Formatting and Parsing Utility
- Experimental Compiler Blackholes Support
- macOS/AArch64 Port
- Unified Logging Supports Asynchronous Log Flushing
- UTF-8 by Default
- Simple Web Server (jwebserver)
- Internet-Address Resolution SPI
- Code Snippets in Java API Documentation
- ZGC Supports String Deduplication
- ParallelGC Supports String Deduplication
- Support Unicode 14.0
- Additional Date-Time Formats
- New Methods to Create Preallocated HashMaps and HashSets
- New XML Processing Limits