New release delivers 12 JDK Enhancement
Proposals to improve the Java language and enhance the development
platform's performance, stability, and security
JavaOne returns to the San Francisco Bay Area in 2025
AUSTIN,
Texas, March 19, 2024 /PRNewswire/ -- Oracle
today announced the availability of Java 22, the latest version of
the world's number one programming language and development
platform. Java 22 (Oracle JDK 22) delivers thousands of
performance, stability, and security improvements to help
developers increase productivity, drive innovation, and accelerate
growth across their organizations. These include enhancements to
the Java language, its APIs and performance, and the tools included
in the Java Development Kit (JDK).
"The new enhancements in Java 22 enable more developers to
quickly and easily build and deliver feature-rich, scalable, and
secure applications to help organizations across the globe grow
their businesses," said Georges
Saab, senior vice president, Oracle Java Platform and chair,
OpenJDK governing board. "By delivering enhancements that
streamline application development and extend Java's reach to make
it accessible to developers of all proficiency levels, Java 22 will
help drive the creation of a wide range of new applications and
services for organizations and developers alike."
The latest JDK provides updates and improvements with 12 JDK
Enhancement Proposals (JEPs). JDK 22 delivers language improvements
from OpenJDK Project Amber (Statements before super[…], Unnamed
Variables & Patterns, String Templates, and Implicitly Declared
Classes and Instance Main Methods); enhancements from Project
Panama (Foreign Function & Memory API and Vector API); features
related to Project Loom (Structured Concurrency and Scoped Values);
core libraries and tools capabilities (Class-File API, Launch
Multi-File Source-Code Programs, and Stream Gatherers); and
performance updates (Region Pinning for G1).
"After nearly three decades, Java's ability to support complex
development tasks that span a wide range of use cases makes the
platform as relevant as it has ever been," said Arnal Dayaratna, research vice president,
software development, IDC. "Java's versatility and comprehensive
toolset enables it to support the development of production-grade,
mission-critical applications at scale, which positions it as a key
enabling technology for innovative use cases such as generative
AI."
Significant updates delivered in Java 22 are:
Project Amber Features
- JEP 447: Statements before super(…): Gives
developers the freedom to express the behavior of constructors. By
allowing statements that do not reference the instance being
created to appear before an explicit constructor invocation, this
feature enables a more natural placement of logic that needs to be
factored into auxiliary static methods, auxiliary intermediate
constructors, or constructor arguments. It also preserves the
existing assurance that constructors run in top-down order during
class instantiation, helping ensure that code in a subclass
constructor cannot interfere with superclass instantiation. In
addition, this feature does not require any changes to the Java
Virtual Machine (JVM) and relies only on the current ability of the
JVM to verify and execute code that appears before explicit
constructor invocations within constructors.
- JEP 456: Unnamed Variables & Patterns:
Helps improve developer productivity by enhancing the Java
language with unnamed variables and patterns, which can be used
when variable declarations or nested patterns are required but
never used. This reduces opportunities for error, improves the
readability of record patterns, and increases the maintainability
of all code.
- JEP 459: String Templates (Second
Preview): Simplifies the development of Java programs by
making it easy to express strings that include values computed at
run time, while also improving the security of programs that
compose strings from user-provided values and pass them to other
systems. Additionally, the readability of expressions mixed with
text is enhanced, and non-string values computed from literal text
and embedded expressions can be created without having to transit
through an intermediate string representation.
- JEP 463: Implicitly Declared Classes and Instance
Main Methods (Second Preview): Helps accelerate learning
by offering a smooth on-ramp to Java programming to enable students
to write their first programs without needing to understand
language features designed for large programs. With this feature,
educators can introduce concepts in a gradual manner and students
can write streamlined declarations for single-class programs and
seamlessly expand their programs to use more advanced features as
their skills grow.
Project Loom Features
- JEP 462: Structured Concurrency (Second
Preview): Helps developers streamline error handling and
cancellation and enhance observability by introducing an API for
structured concurrency. This helps promote a style of concurrent
programming that can eliminate common risks arising from
cancellation and shutdown – such as thread leaks and cancellation
delays – and improves the observability of concurrent code.
- JEP 464: Scoped Values (Second
Preview): Helps increase ease-of-use, comprehensibility,
performance, and robustness of developers' projects by enabling the
sharing of immutable data within and across threads.
Project Panama Features
- JEP 454: Foreign Function & Memory
API: Increases ease-of-use, flexibility, safety, and
performance for developers by introducing an API to enable Java
programs to interoperate with code and data outside of the Java
runtime. By efficiently invoking foreign functions such as code
outside the Java Virtual Machine, and by safely accessing foreign
memory (i.e., memory not managed by the JVM), the new API allows
Java programs to call native libraries and process native data
without requiring the Java Native Interface.
- JEP 460: Vector API (Seventh
Incubator): Enables developers to achieve performance
superior to equivalent scalar computations by introducing an API to
express vector computations that reliably compile at runtime to
vector instructions on supported CPU architectures.
Core Libraries & Tools Features
- JEP 457: Class-File API (Preview): Helps
developers improve productivity by providing a standard API for
parsing, generating, and transforming Java class files.
- JEP 458: Launch Multi-File Source-Code
Programs: Enables developers to choose whether and when to
configure a build tool by enhancing the Java application launcher
to enable it to run a program supplied as multiple files of Java
source code.
- JEP 461: Stream Gatherers (Preview): Helps
developers improve productivity by enhancing the Stream API to
support custom intermediate operations, which will allow stream
pipelines to transform data in ways that are not easily achievable
with the existing built-in intermediate operations. By making
stream pipelines more flexible and expressive and allowing custom
intermediate operations to manipulate streams of infinite size,
this feature enables developers to become more efficient in
reading, writing, and maintaining Java code.
Performance Updates
- JEP 423: Region Pinning for G1: Helps reduce
latency by allowing some garbage collection to happen during some
native library calls that would have otherwise needed to pause the
collector. This is achieved by tracking which objects need to be
blocked during these native library calls and "pinning" just the
regions that contain these objects. This allows garbage collection
to continue normally in unpinned regions, even during what would
have otherwise been a blocking native library call.
The Java 22 release is the result of continuous collaboration
between Oracle and other members of the worldwide Java developer
community via OpenJDK and the Java Community Process (JCP). In
addition to the new enhancements and features, Java 22 is supported
by Java Management Service (JMS) – an Oracle Cloud Infrastructure
(OCI) native service – which offers a unified console and dashboard
to help organizations manage Java runtimes and applications
on-premises or in any cloud. For more details on the features in
Java 22, please read the Java 22 technical blog post.
Supporting the Global Java Ecosystem with Innovation in the
Cloud
Java delivers increased performance, efficiency, innovation, and
cost savings when deployed in the cloud on OCI, which is one of the
first hyperscale clouds to support Java 22. By delivering Oracle
Java SE, Oracle GraalVM, and the Java SE Subscription Enterprise
Performance Pack free of charge on OCI, Java 22 enables developers
to build and deploy applications that run faster, better, and with
optimized cost-performance.
The Oracle Java Universal SE Subscription is a pay-as-you-go
offering that provides customers with best-in-class support. It
includes triage support for the entire Java portfolio, entitlement
to GraalVM, the Java SE Subscription Enterprise Performance Pack,
access to the advanced features of the Java Management Service, and
the flexibility to upgrade at the pace of their businesses. This
helps IT organizations manage complexity, contain costs, and
mitigate security risks.
JavaOne Returns in 2025
The flagship event for the global Java community, JavaOne, will
return to the San Francisco Bay
Area in 2025. Taking place from March
17-20, 2025 in Redwood Shores, California, JavaOne 2025 will give attendees
the opportunity to hear about the latest Java developments and
interact with Oracle's Java experts and industry luminaries. Read
more via the blog post on Inside Java here.
Supporting Quotes
"Within the dynamic ecosystem of the Türkiye Java Community (TJC), Oracle's enduring
support fuels our momentum," said Evren
Tan, community lead, TJC. "As Java 22 unfolds, we are
embracing an array of contemporary features that further enhance
developer efficiency, bolstering our commitment to advancing
Java technology in Türkiye. We
also welcome Java developers
worldwide to join us in TJC activities, showcasing the welcoming
community spirit that keeps Java
vibrant."
"Java's popularity as a
programming language, platform, and developer community continues
to grow in Morocco and the African
region," said Badr El Hourari, founder and CIO, xHub. "With Java
22, I'm excited to see Oracle's Java team focus on innovation that will help
the new developers adopt Java more
quickly such as with JEP 463. By simplifying the language, the
on-ramp to Java becomes easier for
a whole new generation of programmers. Also, here in Morocco we continue to highlight the
importance of Java at the annual
Devoxx Morocco conference, and we welcome all developers to attend
this year's event on October 2-4 to
hear from some of the most influential global voices in the
Java community."
"It amazes me to see Java 22
bundle features for all – from students to senior developers, and
from adventurous Java enthusiasts
to organizations looking for stability with performance," said Mala
Gupta, Java developer advocate,
JetBrains. "Java is embracing a
minimalist approach by continuing to reduce ceremonies around
writing initial steps of code, via instance main method and
implicit classes, making it easier for folks to get started
learning Java. With constructor
makeover (statements before super[…]), Java has proven again that it supports
responsible innovation, and relaxing language constraints that
existed from Java's version 1.0
without breaking any existing code is very exciting. IntelliJ IDEA
2024.1 is ready with its support for Java 22 features to enable Java developers to use them with ease."
"The Helidon team recognized the value of virtual threads as
soon as they were announced. With Helidon 4, the team rewrote the
Helidon web server to natively use virtual threads, which resulted
in much better performance and increased developer productivity,"
said Tom Snyder, vice president of
engineering, enterprise cloud native Java, Oracle. "Now with Java 22 we are seeing another performance
boost for virtual threads, and these significant improvements will
benefit all Helidon users."
"Seamless integration with the latest Java innovations is helping Oracle Database
deliver the world's most advanced database technologies for
developing and running modern applications," said Kuassi Mensah, director of product management,
Oracle. "The Oracle Java Database Connectivity (JDBC) drivers have
been rewritten to seamlessly support Java virtual threads. The combination of
Java virtual threads and the new
pipelined database operations in Oracle Database 23c helps improve
end-to-end scalability for Java
applications."
To learn more about Java and
its global ecosystem, please visit:
- Dev.java: The official portal for learning Java
- Inside.java: News and views from the members of the Java Team
at Oracle
- Java YouTube: The official Java YouTube channel for
Java learning videos
Additional Resources
- Download Oracle JDK 22
- Read the Java 22 technical
blog
- Watch the Java 22
livestream
- Read about JavaOne 2025
- Learn more about Java Management Service
- Learn more about the Oracle Java SE Universal Subscription
About Oracle
Oracle offers integrated suites of applications plus secure,
autonomous infrastructure in the Oracle Cloud. For more information
about Oracle (NYSE: ORCL), please visit us at www.oracle.com.
Trademarks
Oracle, Java, MySQL and
NetSuite are registered trademarks of Oracle Corporation. NetSuite
was the first cloud company—ushering in the new era of cloud
computing.
View original content to download
multimedia:https://www.prnewswire.com/news-releases/oracle-releases-java-22-302093034.html
SOURCE Oracle