Oracle加快了Java 9的开发步伐。 下一个主要版本9的一组初步Java增强提案(JEP)已出现在OpenJDK上 。 这次,Oracle在谈论真正的功能。 以前的JDK9 早期访问版本仅限于“错误修复和小的增强”。
新的API和性能功能
下一个版本将具有三个新的API:
轻量级的JSON API,用于使用和生成JSON文档和数据流
一个HTTP 2客户端 ,它将带来HTTP 2.0和websocket,同时替换旧的HttpURLConnection
流程API更新,以改善对操作系统流程的控制和管理(开发人员经常被迫使用当前API使用本机代码)
除了其他几个较小的功能,以及JEP Index已经跟踪的数十个建议之外,Oracle还承诺了另外三个性能功能:
改进竞争锁 ,目的是在线程竞争对对象的访问时提高性能
分段代码缓存,具有更好的性能,更短的扫描时间,更少的碎片和进一步的扩展
Smart Java编译器或sjavac将得到改进,以允许在JDK构建中使用默认值,并在构建较大项目时通用
Java的本机接口也将作为Java Native Runtime项目的一部分被重新访问,该项目在2011年的JavaOne期间曾暗示过,当时Oracle还在2016年讨论了Java 9版本,该版本具有对多千兆字节堆的改进支持和自调整JVM 。
模块化源代码
如果这些功能还没有引起您的兴趣,那么Oracle肯定会提供模块化源代码 。 JEP 201旨在将JDK的源代码重组为模块,从而从根本上为Project Jigsaw的结构化实现奠定基础。
Jigsaw从Java 7删除,又回到Java 9,仍然是Oracle下一个发行版最大的话题之一。 该项目的主要目标是为较小的设备提供可伸缩性,为JDK和Java SE提供改进的安全性,增强的性能以及简化库和大型应用程序的构造。 同时, Penrose项目正在探索Jigsaw与开源网关计划之间的互操作性。
OracleJava平台小组软件开发副总裁Georges Saab先前对JAXenter表示,Jigsaw项目的工作正在进行中,开发团队“正在探索简化的原型并对其进行原型设计”,以确保它能够为Java 9及时准备就绪。
动荡的发行历史
但是,人们已经知道Oracle很难按时发布Java版本。 许多挫折,例如比预期更棘手的Project Lambda和臭名昭著的基于applet的安全问题,迫使该公司将Java 8的发布推迟了总共两年。 甚至自那时以来,据报道,Java 8的更新一直在导致许多开发工具崩溃 。
还请参见: 为什么很难找到优秀的Java开发人员?
Java 9目前计划于2016年发布,从而使Oracle在不到两年的时间内(而不是通常的三年)准备好发布新版本,而且还为请求 , 谣言 ,功能公告和不可避免的延迟留出了很多时间。
翻译自: https://jaxenter.com/java-9-features-announced-108016.html