Java Development Kit 20 Is GA
Written by Nikos Vaggalis   
Monday, 27 March 2023

JDK 20 is now generally available with many new features that render Java not just relevant to today's requirements but a few steps ahead. Let's find out what's new.

javaoraclelogo

Every JDK since the major revamping of Java with venerable version 8, has been adding something new and exciting to the language. For instance JDK 9 added Modules, 10 added Local-Variable Type Inference, 15 Text blocks and 19 the preview of Virtual threads under project Loom.

But 20 doesn't just add a second preview to Virtual Threads. bringing it close to production readiness; it's not just about project Loom. Instead it is an amalgamation of JEPs (JDK Enhancement Proposals) collected under the umbrella projects Panama and Amber too.

As such the JEP's that found the way into version 20 of the JDK are:

429: Scoped Values (Incubator)
432: Record Patterns (Second Preview)
433: Pattern Matching for switch (Fourth Preview)
434: Foreign Function & Memory API (Second Preview)
436: Virtual Threads (Second Preview)
437: Structured Concurrency (Second Incubator)
438: Vector API (Fifth Incubator)

along with hundreds of smaller enhancements and thousands of bug fixes.

Project Panama is represented in the JDK with JEP 434 and JEP 438. Project Amber is represented with JEP 432 and JEP 433, while Project Loom with 429, 436 and 437.

From those JEP's , a very interesting one is 429, Scoped Values which are Thread Local alike objects but more modern as well as necessary for Virtual Threads to function effectively.

JEP 434: Foreign Function & Memory API is also one of those at the cutting edge. As a refresher , this JEP lays out a new way to access native libraries that are written in languages like C and C++. Under this API Java programs can call native libraries and process native data without the brittleness and danger of JNI.

But it was not just JEPs being utilized;there were also minor enhancements which might to be that minor after all, like
adding Named Groups in regular expressions and full support for Unicode 15.0.

With that, it was also about time to phase out APIs of the past. As such the following amongst others can finally RIP:

  • Applet API
  • Security manager
  • Finalization

So lately we have Java 20, Spring 6, Spring Boot 3, Jakarta 10. Plenty of innovation inside Java's ecosystem. And that is a few more reasons to go Java if not already on.

javaoraclelogo

 

More Information

OpenJDK JDK 20 General-Availability Release

 

Related Articles

JDK 18 Adds Simple Web Server

Sigstore Java - Sign And Verify Your Java Builds

Jakarta vs Spring - The War Goes On

Microsoft Jumps on the OpenJDK Bandwagon 

Foojay - All About Java and the OpenJDK

 

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Azure AI And Pgvector Run Generative AI Directly On Postgres
26/03/2024

It's a match made in heaven. The Azure AI extension enables the database to call into various Azure AI services like Azure OpenAI. Combined with pgvector you can go far beyond full text search. Let's  [ ... ]



Rust Twice As Productive As C++
03/04/2024

Google director of engineering, Lars Bergstrom, gave a talk at the recent Rust Nation UK conference and claimed that Rust was twice as productive as C++. Given how good Google is at C++, this is quite [ ... ]


More News

raspberry pi books

 

Comments




or email your comment to: comments@i-programmer.info