Oracle Releases Java 23
September 17, 2024

Oracle announced the availability of Java 23, the latest version of the programming language and development platform.

Java 23 (Oracle JDK 23) delivers thousands of improvements to help developers increase productivity and drive innovation, while enhancements to the platform's performance, stability, and security help organizations accelerate business growth.

"Java continues to evolve to support organizations' increasingly diverse modern application development needs," said Arnal Dayaratna, research vice president, software development, IDC. "The new release enables developers to expand their toolset and increase their productivity, helping them build and deliver applications that leverage the power of groundbreaking technologies such as AI. By delivering innovative new capabilities every six months, Java continues to help development teams add significant value to their organizations."

In addition to the new enhancements and features for developers, Java 23 provides significant value to their organizations. For example, Java 23 is supported by the recent GA of Java Management Service (JMS) 9.0, an Oracle Cloud Infrastructure (OCI) native service that provides a unified console and dashboard to help organizations manage Java runtimes and applications on-premises or in any cloud. In addition, JMS 9.0 provides many usability improvements, and Oracle JDK 23 provides more options to fine-tune and improve peak performance with the addition of the Graal compiler, a dynamic just-in-time (JIT) compiler written in Java that transforms bytecode into optimized machine code.

"The new features in Java 23 help developers across all levels of expertise increase their productivity and streamline the development of high-performing, secure, and scalable applications," said Georges Saab, senior vice president, Oracle Java Platform and chair, OpenJDK governing board. "With a wide range of new features and tools designed to help developers build and deliver applications faster and more efficiently, Java 23 helps development teams and their organizations boost innovation and drive increased business growth."

Java 23 delivers improvements and enhancements to the Java language, runtime, libraries, and the tools included in the Java Development Kit (JDK). Significant updates delivered in Java 23 are:

■ Language Features via Project Amber

- JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview): Help increase Java programming productivity by making the language more uniform and more expressive. By helping to remove restrictions pertaining to primitive types that developers encounter when using pattern matching, instanceof, and switch, it enhances pattern matching by allowing primitive type patterns in all pattern contexts, and also extends instanceof and switch to work with all primitive types.

- JEP 476: Module Import Declarations (Preview): Helps developers improve productivity by enabling them to quickly and easily import all the packages exported by a module, without requiring the importing code to be in a module itself. This simplifies the reuse of modular libraries for all developers and helps beginners more easily use third-party libraries and fundamental Java classes without needing to learn where they are located in a package hierarchy.

- JEP 477: Implicitly Declared Classes and Instance Main Methods (Third Preview): Help accelerate learning and skills development 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. As a result, educators and instructors can introduce concepts gradually, and students can write streamlined declarations for single-class programs and seamlessly expand their programs with more advanced features as their skills grow. In addition, experienced Java developers can write small programs succinctly without needing to use tools designed for larger projects.

- JEP 482: Flexible Constructor Bodies (Second Preview): Help developers increase productivity by allowing statements to appear before an explicit constructor invocation – such as super(..) or this(..). The statements cannot reference the instance under construction, but can initialize its fields before invoking another constructor, which makes a class more reliable when methods are overridden. This gives developers greater freedom to express the behavior of constructors and preserves the existing guarantee that constructors run in top-down order during class instantiation.

■ Libraries

- JEP 466: Class-File API (Second Preview): Helps developers improve productivity by providing a standard API for parsing, generating, and transforming Java class files.

- JEP 469: Vector API (Eighth Incubator): Helps developers improve productivity by introducing an API to express vector computations that reliably compile at runtime to vector instructions on supported CPU architectures. As a result, developers can achieve performance superior to equivalent scalar computations.

- JEP 473: Stream Gatherers (Second Preview): Helps developers improve productivity by enhancing the Stream API to support custom intermediate operations, which allow stream pipelines to transform data in ways that are not easily achievable with 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.

- JEP 480: Structured Concurrency (Third Preview): Helps developers improve the maintainability, reliability, and observability of multithreaded code by simplifying concurrent programming via a new API for structured concurrency. By consolidating groups of related tasks running in different threads into a single unit of work, structured concurrency can help eliminate common risks arising from cancellation and shutdown, such as thread leaks and cancellation delays.

- JEP 481: Scoped Values (Third Preview): Helps developers increase the ease-of-use, comprehensibility, performance, and robustness of their projects by enabling the sharing of immutable data within and across threads.

■ Performance and Runtime Updates

- JEP 474: ZGC: Generational Mode by Default: Helps developers increase efficiency by switching the default mode of the Z Garbage Collector (ZGC) to the generational mode, which reduces the resources and maintenance costs required to support two different modes.

■ Tools

- JEP 467: Markdown Documentation Comments: Helps developers increase efficiency and productivity by enabling Javadoc documentation comments to be written in Markdown rather than solely in HTML and Javadoc @-tags. By gaining the ability to use Markdown syntax in documentation comments alongside HTML elements and JavaDoc tags, developers can more easily write and read API documentation comments in source form without adversely impacting the interpretation of existing documentation comments.

■ Stewardship

- JEP 471: Deprecate the Memory-Access Methods in sun.misc.unsafe for Removal: Provides developers with a streamlined toolset by helping them understand when their applications rely, directly or indirectly, on the memory-access methods in sun.misc.Unsafe, which is planned for removal in a future release.

The features in the Java 23 release are a result of continuous close collaboration between Oracle and other members of the worldwide Java developer community via OpenJDK and the Java Community Process (JCP).

Java delivers increased performance, efficiency, cost savings, and innovation when deployed on OCI, which is one of the first hyperscale clouds to support Java 23. By delivering Oracle Java SE, Oracle GraalVM, and the Java SE Subscription Enterprise Performance Pack at no additional charge on OCI, Java 23 helps developers build and deploy applications that run faster, better, and with optimized cost-performance.

The Oracle Java Universal SE Subscription is an offering that provides customers with best-in-class support. It includes triage support for the entire Java portfolio, entitlement to Oracle GraalVM, the Java SE Subscription Enterprise Performance Pack, access to the advanced features of JMS, and the flexibility to upgrade at the pace of customers' businesses. This helps IT organizations manage complexity, mitigate security risks, and contain costs.

In addition, Oracle recently announced at Oracle CloudWorld that Oracle Code Assist will be initially optimized for Java. Oracle Code Assist is an AI code companion that makes it easier to build Java applications, and the Oracle Code Assist service running on OCI will also be available for C, C++, Go, JavaScript, PL/SQL, Python, Ruby, and Rust.

Share this

Industry News

December 03, 2024

SmartBear announced its acquisition of QMetry, provider of an AI-enabled digital quality platform designed to scale software quality.

December 03, 2024

Red Hat signed a strategic collaboration agreement (SCA) with Amazon Web Services (AWS) to scale availability of Red Hat open source solutions in AWS Marketplace, building upon the two companies’ long-standing relationship.

December 03, 2024

CloudZero announced the launch of CloudZero Intelligence — an AI system powering CloudZero Advisor, a free, publicly available tool that uses conversational AI to help businesses accurately predict and optimize the cost of cloud infrastructure.

December 03, 2024

Opsera has been accepted into the Amazon Web Services (AWS) Independent Software Vendor (ISV) Accelerate Program, a co-sell program for AWS Partners that provides software solutions that run on or integrate with AWS.

December 02, 2024

Spectro Cloud is a launch partner for the new Amazon EKS Hybrid Nodes feature debuting at AWS re:Invent 2024.

December 02, 2024

Couchbase unveiled Capella AI Services to help enterprises address the growing data challenges of AI development and deployment and streamline how they build secure agentic AI applications at scale.

December 02, 2024

Veracode announced innovations to help developers build secure-by-design software, and security teams reduce risk across their code-to-cloud ecosystem.

December 02, 2024

Traefik Labs unveiled the Traefik AI Gateway, a centralized cloud-native egress gateway for managing and securing internal applications with external AI services like Large Language Models (LLMs).

December 02, 2024

Generally available to all customers today, Sumo Logic Mo Copilot, an AI Copilot for DevSecOps, will empower the entire team and drastically reduce response times for critical applications.

December 02, 2024

iTMethods announced a strategic partnership with CircleCI, a continuous integration and delivery (CI/CD) platform. Together, they will deliver a seamless, end-to-end solution for optimizing software development and delivery processes.

November 26, 2024

Check Point® Software Technologies Ltd. has been recognized as a Leader and Fast Mover in the latest GigaOm Radar Report for Cloud-Native Application Protection Platforms (CNAPPs).

November 26, 2024

Spectro Cloud, provider of the award-winning Palette Edge™ Kubernetes management platform, announced a new integrated edge in a box solution featuring the Hewlett Packard Enterprise (HPE) ProLiant DL145 Gen11 server to help organizations deploy, secure, and manage demanding applications for diverse edge locations.

November 26, 2024

Red Hat announced the availability of Red Hat JBoss Enterprise Application Platform (JBoss EAP) 8 on Microsoft Azure.

November 26, 2024

Launchable by CloudBees is now available on AWS Marketplace, a digital catalog with thousands of software listings from independent software vendors that make it easy to find, test, buy, and deploy software that runs on Amazon Web Services (AWS).