With Java Growth Package (JDK) 23 resulting from arrive September 17, work already has begun on JDK 24, with the primary function, proscribing using JNI (Java Native Interface), focused for the discharge. A mess of different options, together with many already in preview in JDK 23, are also potential for inclusion.
More likely to arrive in March 2025, JDK 24 has been designated as non-long-term help (LTS) launch, which means that like JDK 23, it should solely get six months of Premier-level help from Oracle.
The primary JDK 24-targeted function, formally referred to as “Put together to Prohibit the Use of JNI,” requires issuing warnings about makes use of of JNI and adjusting the overseas perform and reminiscence (FFM) API, featured in JDK 22, to challenge warnings in a constant method. These warnings are supposed to organize for a future launch that ensures integrity by default by uniformly proscribing JNI and the FFM API. Objectives of the plan embrace preserving JNI as an ordinary solution to interoperate with native code, getting ready the Java ecosystem for future releases that disallow interoperation with native code by default, and aligning using JNI and the FFM API so library maintainers can migrate from one to the opposite with out requiring builders to vary command-line choices.
Further options focusing on JDK 24 will probably be decided throughout the subsequent a number of months. Potential Java 24 options embrace additional previews or ultimate releases of options being previewed in JDK 23. These embrace the class-file API, for parsing, producing, and remodeling Java class recordsdata; stream gatherers, to reinforce the stream API for customized intermediate operations; module import declarations, for succinctly importing all packages exported by a module and simplifying reuse of modular libraries; structured concurrency, to simplify concurrent programming; scoped values, for sharing immutable information; and versatile constructor our bodies, giving builders larger freedom to precise habits of constructors.
One other function in preview in JDK 23 and a contender for JDK 24 is primitive varieties in patterns, instanceof, and change, which goals to reinforce sample matching by permitting primitive sort patterns in all sample contexts, and to increase instanceof
and change
to work with all primitive varieties. One other potential JDK 24 function is the vector API, now in an eighth incubation stage in JDK 23. The vector API is geared to expressing vector computations that reliably categorical at runtime to optimum vector directions on supported CPU architectures. Forward-of-time class loading, a function designed to hurry Java startups, and string templates, a function previewed in JDK 21 and JDK 22 however dropped from JDK 23, may be focused to JDK 24.
Probably the most-recent LTS launch, JDK 21, arrived in September 2023 and is because of get no less than 5 years of Premier help from Oracle. The subsequent LTS model, JDK 25, is due in September 2025. LTS releases have dominated Java adoption, which implies adoption of JDK 23 and JDK 24 could possibly be on the low finish as customers await JDK 25.