A new, 15th version of the Java platform has been released today .
You can download JDK 15 from the following links:
- Oracle JDK (proprietary, note usage restrictions).
- OpenJDK (free version)
The new release includes 14 JEPs and hundreds of smaller improvements . If you want to see the complete list of changes up to all JIRA tickets, you can see them on Alexey Shipilev's website . Also, if you are interested in all the API changes, you can see them here .
Let's list the JEPs that made it to Java 15:
Language
Blocks of Text (JEP 378)
Blocks of text that appeared in Java 13 and went through two previews are now a stable syntax. This means that Java now has two permanent constructs that have appeared since Java 11: switch
and blocks of text.
- instanceof
(second preview) (JEP 375)
The improved operator instanceof
, which was introduced in Java 14, moved to the second preview unchanged. Recall that the preview mode exists in Java for innovations that are in preliminary status, i.e. can change in an incompatible way or even disappear altogether, and a special flag is required to enable them --enable-preview
. instanceof
We have covered pattern matching for in detail in this article .
Entries (second preview) (JEP 384)
The entries, which also appeared in Java 14, also remained in preview mode. There are few changes compared to the previous version: the restriction that a canonical constructor must be removed has been removed public
, and local enumerations and interfaces are allowed .
Sealed (preview) (JEP 360)
Java : «» . sealed
, , , . sealed
.
JVM
ZGC (JEP 377)
ZGC, Java 11 , . , ZGC β , (< 10) (> 1TB).
Shenandoah (JEP 379)
Shenandoah, ZGC, . Shenandoah Java 12. , Shenandoah JDK 11, LTS- Java. , , JDK 15, JDK 11.0.9, 20 2020 .
Disable and Deprecate Biased Locking (JEP 374)
Biased Locking, JDK, - Β« Β» . , -XX:+UseBiasedLocking
, . Biased Locking Hydra.
Solaris SPARC (JEP 381)
JDK Solaris/SPARC, Solaris/x64 Linux/SPARC, deprecated for removal Java 14, . JDK.
API
(JEP 371)
, . , . , -. Lookup.defineHiddenClass()
.
JavaScript Nashorn (JEP 372)
Nashorn, deprecated for removal Java 11, . Nashorn JavaScript, , GraalVM JavaScript Rhino.
Reimplement the Legacy DatagramSocket API (JEP 373)
JDK 1.0 java.net.DatagramSocket
and java.net.MulticastSocket
, , Loom. Java 13 java.net.Socket
java.net.ServerSocket
.
Foreign-Memory Access API (Second Incubator) (JEP 383)
Deprecate RMI Activation for Removal (JEP 385)
RMI, RMI Activation, deprecated for removal.
Edwards-Curve Digital Signature Algorithm (EdDSA) (JEP 339)
EdDSA Java.
Java 15, like 12, 13, 14, is an STS release and will only have two updates.