Java_9
在 2011 年的 JavaOne 中,Oracle 讨论了一些他们希望在 2016 年于 Java 9 中发布的功能。 [232] Java 9 应当对千兆级堆拥有更好的支持,同时能够更好地集成本机代码,且拥有新的垃圾收集器 G1 和能够自我调节的 JVM。 [233] 2016 年初,Java 9 的发布被重新定为 2017 年 3 月;2017 年 3 月时,发布日期又被拖延至 2017 年 7 月; [234] 后来又因 Java 执行委员会对 Jigsaw 项目实现的分歧而最终定为 2017 年 9 月 21 日,在此期间 Oracle 回应了部分疑问,并对一些重要的技术问题进行了修正。在 2017 年 6 月的最后几天,JCP 对拟议的模块系统方案达成了共识。
主要特性
JSR 376:在 Jigsaw 项目中将 JDK 模块化(参见 Java平台模块系统条目) [235] [236] [237]
参考 Java 9 模块化编程
JEP 295:AOT 编译(通过 Graal VM 实现)[240]
参考
JEP 268:XML Catalogs[241]
JEP 266:更多的并发更新。 [242] 包含响应式流的 Java 实现,及其部分替代品
java.util.concurrent.Flow
。参考 Java 9 揭秘
JEP 193:变量句柄:定义一个标准方法来调用
java.util.concurrent.atomic
和sun.misc.Unsafe
操作的等价物。JEP 282:jlink:Java 链接器。该工具可以为模块生成一个包含了其所有依赖项的自定义运行时映像,同时允许生成一个包括运行它的 JVM 的可执行文件,。
JavaDB 被移出 JDK
JEP 263:高 DPI 图像:自动缩放与尺寸自适应。
Java 9 的首个发布候选版于 2017 年 8 月 9 日发布,首个稳定版于 2017 年 9 月 21 日发布。
Java 9 更新
版本 | 发布日期 | 亮点 |
---|---|---|
Java SE 9[243] | 2017-09-21 | 初始版本 |
Java SE 9.0.1[244] | 2017-10-17 | 安全性修补和严重漏洞修补 |
Java SE 9.0.4[245] | 2018-01-16 | JDK 9 的最终版本。安全性修补和严重漏洞修补 |
参考
Java 9 下载
https://www.oracle.com/java/technologies/javase/javase9-archive-downloads.html