Java 19可能是一个大版本? - infoworld


随着Java 18将在两周内作为生产版本发布,Java 19 开始形成。
标准 Java的下一个版本JDK19将通过API对Java运行时JVM以外的代码实现调用操作,还可能涵盖从通用泛型到 RISC-V 端口的各种功能。
现在OpenJDK社区流传的Java 19第一个提案是一个外来函数和内存API,它将允许Java程序与Java运行时之外的代码和数据进行互操作。该功能将在Java开发工具包(JDK)19中进行预览,该工具包预计将于今年9月到来。

包含在 JDK 19 中的另一种可能性是矢量 API,它正在 JDK 18 中进行第三次孵化。已经提出了第四次孵化。该 API 将表达向量计算,在运行时编译为最佳向量指令。

甲骨文公司说,总体今年的Java计划将继续发展四个项目:

  • Project Valhalla(孵化先进的JVM和语言功能);
  • Project Panama(互联本地和JVM代码);
  • Project Loom(改善并发性);
  • 以及Project Amber(探索和孵化较小的、面向生产力的Java语言功能。

以下功能很可能会在Java19实现:

  • 通用泛型预览,来自 Valhalla。通用泛型将统一泛型代码中引用和原始类型的处理,实现途径:允许 Java 类型变量在这两种类型的范围内。
  • 值对象的预览,也是 Valhalla 的增强,提供只有final实例字段且缺少对象标识的类实例。将声明无身份标识的值类。(banq注:DDD中的值对象模型直接实现)
  • 记录模式的预览,用于解构record值。这是琥珀计划的一部分。
  • G1 垃圾收集器的区域固定,通过对 G1 实施区域固定来减少延迟,因此在 JNI(Java 本地接口)关键区域期间不需要禁用垃圾收集。
  • 用于RISC-V的 JDK 的 Linux 端口,这是一种开源、免版税的指令集架构。