Java 16 概述

Java 16 概述

Java 16是一个重要的特性发布,它为JAVA带来了许多JVM特定的更改和语言特定的更改。它遵循了自Java 10以来引入的Java发布步调,并于2021年3月发布,仅在Java 15发布后的六个月内发布。

Java 16是一个非LTS版本。

新功能

以下是在Java 16中引入的主要新功能。

  • JEP 338 – Vector API (Incubator) − 引入了新的Vector API,允许开发人员显式地执行矢量操作。

  • JEP 347 – 启用C++14语言特性 − 可以在JDK 16中使用C++14特性编写C++源代码。

  • JEP 357, JEP 369 – 从Mercurial迁移到Git/GitHub − OpenJDK源代码从Mercurial迁移到Git/GitHub。

  • JEP 376 – ZGC – 并发线程堆栈处理 − Z垃圾回收器通过将其线程堆栈处理从安全点移动到并发阶段来改进。

  • JEP 380 – Unix-Domain Socket Channels − SocketChannel和ServerSocketChannel现在支持Unix域套接字。

  • JEP 386 – Alpine Linux移植 − 现在JDK可用于Alpine Linux和其他使用musl实现的Linux发行版。

  • JEP 387 – 弹性Metaspace − 通过快速返回未使用的HotSpot类元数据或Metaspace内存到操作系统,改进了Metaspace内存管理,减少了Metaspace占用空间,并简化了Metaspace代码。

  • JEP 388 – Windows/AArch64移植 − 现在JDK可以在ARM硬件服务器或基于ARM的笔记本上运行。

  • JEP 389 – Foreign Linker API (Incubator) − 使用新的API替代JNI,可以通过C/C++调用Java代码,或者反过来。

  • JEP 390 – 值类警告 − 如果值类使用synchronize进行同步,将会发出警告。

  • JEP 392 – 打包工具 − jpackage现在是一个标准特性,而不再是孵化器特性。

  • JEP 393 – 外部内存访问API (第三孵化器) − 对外部内存访问API进行了轻微的增强。

  • JEP 394 – instanceof的模式匹配 − instanceof的模式匹配现在是一个标准特性。

  • JEP 395 – 记录 − 记录现在是一个标准特性。

  • JEP 396 – 默认强制封装JDK内部 − –illegal-access选项的默认模式现在是禁止。之前是允许。

  • JEP 397 – 封闭类 (第二预览版) − 对封闭类进行了轻微的增强。

Java 16通过增加了许多新的方法和选项来增强了许多API。我们将在下一章中了解这些变化。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程