JDK 15 已于今年 9 月 15 日发布,这是一个短期版本,只会受到 Oracle 6 个月的支持。JDK 16 将作为标准 Java 版本的参考实现在 2021 年 3 月 16 日发布。与 JDK 15 一样,JDK 16 也将是个短期版本,仅提供 6 个月的支持。预计于 2021 年 9 月发布的 JDK 17 将是一个长期支持(LTS)版本,会获得数年的支持。目前的 LTS 版本 JDK 11 则于 2018 年 9 月发布。
JDK 16 现在处于 Early-Access(EA,早期访问)阶段,目前最新版本是 Build 26
按 InfoWorld  所述,截至 2020 年 11 月 30 日,已有 14 个特性已被正式提了出来,还有 2 个特性则是预测性质。Java 16 即将推出的新功能或包括有:
  • 之前在 JDK 15 中预览过,密封类和接口限制了哪些其他类和接口可以继承或实现它们。该计划的目标包括:允许类或接口的作者控制负责实现它的代码,提供比访问修饰符更声明性的方式来限制超类的使用,并通过提供模式分析的基础来支持模式匹配的未来方向。
  • 除了 misc.Unsafe 等关键的内部 API 外,默认情况下对 JDK 内部进行强封装。用户可以选择自 JDK 9 以来默认的宽松的强封装。
  • 外部链接程序 API,提供对本地代码的静态类型的纯 Java 访问。该 API 将在 JDK 16 中处于孵化阶段。
  • 移动 ZGC(Z 垃圾收集器)线程堆栈处理从安全点到并发阶段。该计划的目标包括从 ZGC 安全点中删除线程堆栈处理。
  • 弹性元空间能力,它可以将未使用的 HotSpot VM 类元数据(元空间)内存更迅速地返回给操作系统,从而减少元空间的占用空间并简化元空间代码,从而降低维护成本。
  • 启用 C ++ 14语言功能,允许在 JDK C ++源代码中使用 C ++ 14功能。
  • 孵化器阶段的矢量 API,其中 JDK 将配备一个孵化器模块,jdk.incubator.vector,以表达可在支持的 CPU 架构上编译为最佳矢量硬件指令的矢量计算,以实现优于等效标量计算的性能。
  • 将 JDK 移植到 Windows / AArch64平台。
  • 在 x64和 AArch64体系结构上,将 JDK 移植到 Alpine Linux 和其他使用 musl 作为其主要 C 库的 Linux 发行版。
  • 提供记录类,作为不可更改数据的透明载体。
  • 增加 Unix 域套接字通道,其中在 nio.channels 包中的套接字通道和服务器套接字通道 API 中增加了 Unix 域(AF_UNIX)套接字支持。
  • 外部存储器访问 API,允许 Java 程序安全地访问 Java 堆外部的外部存储器。
  • 用于 instanceof 运算符的模式匹配,在 JDK 14 和 JDK 15 中进行了预览,将在 JDK 16 中完成。
  • 提供用于打包独立 Java 应用程序的 jpackage 工具。
  • OpenJDK 源码从 Mercurial 迁移到 Git,托管平台也迁移到 GitHub。
详情可查看:https://jdk.java.net/16/
CNN中常用的四种卷积详解
2020-12-01
20 年才发布 1.0 版本,这款开源儿童教育软件支持全平台免费使用
2020-11-29
VSCode 现内存泄漏 BUG,官方处理方式引社区不满
2020-11-30

觉得不错,请点个在看
继续阅读
阅读原文