Java 11: Public Review Specification is out

© Shutterstock / Grygier
Java 10 was released less than a month ago but thanks to the new six-month cadence, all we can think of right now is Java 11. Speaking of the next Java version, Public Review Specification is out — you’ve got until May 7 to download it.
No rest for Java 11. It’s been less than a month since Java 10 was released but you can already get busy on Java 11, now that Public Review Specification is out. The closing date is May 7 — you can download it here.
The next stage is Public Review Ballot, which starts on May 8 and ends on May 14.
What’s in Java 11 so far
- 309: Dynamic Class-File Constants
- 318: Epsilon: An Arbitrarily Low-Overhead Garbage Collector
- 323: Local-Variable Syntax for Lambda Parameters
Sure, three features may not seem like much but the Java 11 journey has just begun.
JEP 309: Dynamic Class-File Constants
Summary: Extend the Java class-file format to support a new constant-pool form,CONSTANT_Dynamic
. Loading a CONSTANT_Dynamic
will delegate creation to a bootstrap method, just as linking an invokedynamic
call site delegates linkage to a bootstrap method.
JEP 318: Epsilon: A No-Op Garbage Collector
Summary: Develop a GC that handles memory allocation but does not implement any actual memory reclamation mechanism. Once the available Java heap is exhausted, the JVM will shut down.
JEP 323: Local-Variable Syntax for Lambda Parameters
Summary: Allow var
to be used when declaring the formal parameters of implicitly typed lambda expressions.
What’s out
The Java EE and CORBA modules were deprecated in Java SE 9 with the declared intent to remove them in a future release. Therefore, they will be removed in Java 11.
Read more about the risks of removing the Java EE modules here. As far as CORBA is concerned, there won’t be a standalone version unless third parties take over maintenance of the CORBA APIs, ORB implementation, CosNaming provider, etc.
SEE ALSO: JavaFX as a separate module: A look back and a leap forward
JavaFX as a separate module
Speaking of Java 11 and what’s not going to be included, it should be noted that starting with the next release, JavaFX will be available as a separate module, decoupled from the JDK.
Oracle wrote in a white paper that JavaFX new fixes will continue to be supported on Java SE 8 through March 2022 and announced that they are “working with interested third parties to make it easier to build and maintain JavaFX as a separately distributable open-source module.”
If you want to read more about the decision to decouple JavaFX from the JDK, check out this article by Johan Vos in which he weighs in on the news and explains why it makes perfect sense to move the development of JavaFX to an open system.