Oracle 已经在开发 Java 9,Java 9 主要的增强内容之前已经出现在 OpenJDK 之上。而现在 Oracle 发布的是真正的新特性,前一个 JDK 9 的 early access 发行版 被标注了“修复bug和小增强”。
新的 APIs 和性能特性:
下一个版本包含三个全新 API:
轻量级的 JSON API
HTTP 2 Client 支持 HTTP 2.0 和 WebSockets,替代传统的 HttpURLConnection
Process API 更新 提升对操作系统进程的控制和管理
此外还有一些小的特性和性能提升:
Improve contended locking, 提升访问对象时的线程竞争处理
Segmented code cache 更好的性能、更短的扫描时间,更少的碎片
Smart Java compiler, 或者叫 sjavac, 用于更大项目的构建
Java 的本地接口也被重新作为 Java Native Runtime project 的一部分,将支持多 GB 堆和一个自调整的 JVM。
模块化的源码
如果你对上述特性不感兴趣,Oracle 还承诺 modular source code ,目的是重新组织 JDK 的源码,使之模块化,以及项目 Jigsaw 的结构化实现。
Jigsaw 在 Java 7 的时候被移除,并在 Java 9 中回归,这是 Oracle 下一个 Java 版本最大的正义点。该项目主要的目的是为更小的设备提供可伸缩性,改进 JDK 和 Java SE 的安全性,对大型应用的性能提升以及更易于构建。与此同时 Penrose Project 用于探索 Jigsaw 和开源网关计划之间的互操作性。
Oracle 的 Java 平台组的软件开发副总裁 Georges Saab 之前 告诉 JAXenter 目前主要工作是在处理 Jigaws 项目,开发团队正在探索和制作一个简单方法的原型来确保能在 Java 9 发布时可用。
动荡的版本历史
不管怎么说,Oracle 知道如何应对不守时的发布 Java 版本时的吐槽,向之前的 Lambda 项目和 Applet 的一些安全问题等等,这些使得 Java 8 的发布整整推迟了 2 年,甚至到现在还有 Java 8 的一些更新导致 很多开发工具无法使用的问题
Java 9 计划在 2016 年发布,留给 Oracle 只有不足 2 年的时间。但还有大量的时间来对这些特性进行讨论、请求公告等。