Java16 is officially released, are you still using JDK8?

Java has always been the most popular programming language among developers by virtue of its ability to continuously improve platform performance, stability and security. IDC's latest report "Java Turns 25" shows that more than 9 million developers (69% of the world's full-time developers) are using Java-more than any other language.

Oracle is continuing to explore the path of continuous innovation in Java, and proudly announces the official release of Java 16, which is also our seventh feature version after the six-month release cycle. This level of predictability makes it easier for developers to manage their innovation adoption plans.

Main features

Vector API (Incubating)

Improved the performance of Java in the CPU vector calculation, which is the support for large-scale tensor calculation, and improved the ability of Java in the AI ​​field.

New C++ features enabled

Allows the use of new features of C++14 in the C++ source code in the JDK.

Migrating from Mercurial to Git

Git has now become the absolute ruler in the field of code version management, and now Java follows the trend and uses Git for source code management.

Migrate to GitHub

The OpenJDK code is now hosted on GitHub.

ZGC garbage collector

Garbage collector for concurrent thread stack processing.

Unix domain socket channel

Unix domain sockets support ServerSocketChannel and SocketChannel.

Alpine Linux Port

On the x64 and AArch64 architectures, port the JDK to Alpine Linux and other Linxu distributions that use the musl C library.

Elastic Metaspace

Hotspot has greatly improved the processing of meta-data (metaspace). The footprint has been reduced, and unused memory can now be reclaimed to the operating system faster.

Windows/AArch64 Port

Port JDK to Windows/AArch64 platform.

Foreign Linker API (Incubating)

Introduce an API that provides pure Java access to static types of native code. Together with the Foreign-Memory API (JEP 393), this API will greatly simplify the error-prone process of binding to native libraries.

Warnings for Value-Based Classes

Specify the original wrapper class as a *value-based class, and deprecate its constructor to delete it, prompting a new deprecation warning. Provide warnings about incorrect attempts to synchronize on instances of any value-based class in the Java platform.

Packaging Tool

Provide jpackage tools for packaging independent Java applications.

Support local packaging format to provide a natural installation experience for end users. These formats include msi and exe on Windows, pkg and dmg on MacOS, and deb and rpm on Linux.

Allows to specify the start time parameter when packaging.

It can be called directly from the command line or programmatically via ToolProviderAPI.

Foreign-Memory Access API (third incubation)

Introduce an API to allow Java programs to safely and effectively access external memory outside the Java heap.

Java16 is officially released, are you still using JDK8?

Public number: Java senior architect, enter " interview questions " to get 500 real interview questions from major manufacturers!

Guess you like

Origin blog.csdn.net/qq_17010193/article/details/115016712