After the official release of JDK 13 on 17th september 2019, we could already have a sneak peek on its sucessor which is the JDK 14. Now its a good time to start thinking about Java 14!. This post will give you a preview on the JDK 14 project.
The first page we go when we want to know everything about the upcoming release of JDK is of course the OpenJDK page. Since we’re going to take a preview on JDK 14, we’ll have to go to OpenJDK JDK 14 page.
So every information on this post are referencing to the OpenJDK JDK 14 information page.
JDK 14 Development schedule
2019/12/12 Rampdown Phase One (fork from main line)
2020/01/16 Rampdown Phase Two
2020/02/06 Initial Release Candidate
2020/02/20 Final Release Candidate
2020/03/17 General Availability
If JDK 14 are following the six-month release schedule set for Java then JDK 14 should arive on March 2020, as a non-LTS(Long Term Support). Same as JDK 13, JDK 14 would be supported for six months waiting for its successor release.
JEP’s targeted for JDK 14
There are a couple of JEP’s that are supposedly targeted to be available on the JDK 14 next year.
Here are the JEP’s list for JDK 14 with its summary and goals (information are taken from OpenJDK JDK 14 page).
JEP 352: Non-Volatile Mapped Byte Buffers
Add new JDK-specific file mapping modes so that the FileChannel API can be used to create MappedByteBuffer instances that refer to non-volatile memory.
“…The primary goal of this JEP is to ensure that clients can access and update NVM from a Java program efficiently and coherently. A key element of this goal is to ensure that individual writes (or small groups of contiguous writes) to a buffer region can be committed with minimal overhead i.e. to ensure that any changes which might still be in cache are written back to memory…”
JEP 354: Switch Expressions (Preview)
Extend switch so it can be used as either a statement or an expression, and so that both forms can use either traditional case … : labels (with fall through) or new case … -> labels (with no fall through), with a further new statement for yielding a value from a switch expression. These changes will simplify everyday coding, and prepare the way for the use of pattern matching (JEP 305) in switch. This is a preview language feature in JDK 13.
JEP 358: Helpful NullPointerExceptions
Improve the usability of NullPointerExceptions generated by the JVM by describing precisely which variable was null.
- “Offer helpful information to developers and support staff about the premature termination of a program.
- Improve program understanding by more clearly associating a dynamic exception with static program code.
- Reduce the confusion and concern that new developers often have about NullPointerExceptions.“
JDK Java 14 Early Access are available
For all of you who want to give your thoughts on how the JDK work or simply just to give you the preview on how the JDK would be, you can download the Early Access on the JDK 14 page.
But before you download the Early Access, please read the disclaimer first, because it has some important details you have to give attention to. Also, International use restriction are applied. Always be a smart reader.
The programming language that I specialize in is Java, because I think Java programming language is more universal and of course because I like it regardless of any reason.