March 17, Oracle announced the general availability of ‘Java 14 (Oracle JDK 14)’.
Java 14 is the latest major release following Java 13, announced in September 2019. Oracle sticks to its six-month release cycle for Java.
It introduces preview features like JEP 305, pattern matching for the instanceof operator, and JEP 359, Records. Text Blocks (JEP 368) was introduced as a preview feature in Java 13, but it is offered again as a preview in Java 14. By introducing ‘pattern matching’, the need for common boilerplate is eliminated, and that allows more concise type-safe code. ‘Records’ is a syntax for declaring classes which hold shallowly immutable data. It has some benefits, for example reducing boilerplate code in classes of this type and allowing modeling of data as data.
Now Switch can be used (‘Switch Expressions’ JEP 361). Another notable feature is the ‘Foreign-Memory Access API (Incubator)’, which allows Java programs to safely and efficiently access foreign memory outside of the Java heap.
JFR Even Streaming (JEP 349) exposes JDK Flight Recorder (JFR) for continuous monitoring to simplify access to JFR data. Helpful NullPointerExceptions (JEP 358) describes which variable was null to improve the usability of NullPointerExceptions.
NUMA-Aware Memory Allocation for G1 is a feature that improves the performance of G1 garbage collector on NUMA system. Low latency garbage collector ZGC is now available on Windows and macOS (JEP 364/JEP 365).
There are many more feature enhancements. JDK can be downloaded from the Oracle’s website.