Oracle today announced the general availability of Java 20, marking the first release of the open source programming language in 2023.
java is one of the most widely deployed programming languages in use today and is developed in an open source approach, led by Oracle. The new release follows the Java 19 update by six months, as part of the regular release cadence that has been established in recent years for Java in an effort to bring new capabilities to the programming language in a timely manner.
The modern Java development process has defined a series of larger projects that have colorful names like Loom, Panama, and Amber. Each of the larger projects have specific long-term goals for improving Java, with incremental capabilities landing in each new Java update.
In Java 20, there are a series of updates as part of Project Loom that aim to improve concurrency and scalability. As part of Project Panama, Java 20 is previewing capabilities that will help accelerate Java performance. The core Java language benefits from a series of capabilities in Project Amber that are now available for developers to try out in Java 20 as well.
Related: Should Developers Still Learn Java Programming Language?
“As we like to say, the rumors of Java’s death have been greatly exaggerated,” Georges Saab, senior vice president of development for the Java Platform group at Oracle and chair of the OpenJDK Governing Board, told ITPro Today. “We’ve continued to come out with new features that developers have given the things they were looking for.”
Java 20 Previews New Features
All new Java features are first defined as a JDK (Java Development Kit) Enhancement Process (JEP). Each JEP goes through a number of phases starting at incubation and then multiple preview stages.
Among the enhancements in Java 20 are:
Pattern matching. JEP 432 and JEP 433 provide Java users with new pattern matching capabilities to help with complex data queries.
Virtual threads. JEP 436 introduces lightweight virtual threads to Java as a way of boosting the performance of concurrent applications.
foreign functions. JEP 434 defines an enhancement that allows Java programs to interoperate with code and data outside of the Java runtime.
Vector APIs. JEP 438 introduces an API to express vector computations in a bid to boost performance.
“Preview features are production-ready features,” Saab explained. “They are features that are fully specified, they’re fully implemented, and they are production level of quality.”
Related: The Problem with General-Purpose Programming Languages
That said, the issue with preview features is that the API could change before the feature reaches final release.
The new features in Java 20 are in various stages of preview, with an eye toward future updates, notably the Java 21 release in six months.
Java 21 is a Long Term Support (LTS) release with support for up to eight years, while Java 20 is an incremental release that will only be supported for six months, Saab said.
Java 20 FAQs
Is Java 20 out?
Yes. Java 20 became generally available on March 21.
Will Java 20 be LTS?
No. Java 20 is a six-month release. The next LTS is Java 21.
Do I have the latest Java update?
Check the Java Control Panel (for more information: https://www.java.com/en/download/help/update_runtime_settings.html)
About the authorSean Michael Kerner is an IT consultant, technology enthusiast and tinkerer. He consults to industry and media organizations on technology issues.