java9.0到来
2016-03-23 15:44
204 查看
随着标准Java的版本更新,开发者总是可以从升级后的版本中获取想要的功能。那么Java 9的发布为什么会让开发者如此的兴奋?下面列出了一些主要原因:
1、模块化的源代码
JDK源代码将以模块化的形式组织起来,生成系统将会在模块化编译上得到增强,并且在生成的时候模块之间的边界也将被强制区分开来。“Jigsaw的目标是为Java SE平台设计并实现标准的模块化系统,并将该系统应用到自身平台和JDK当中去。它的主要目标是为一些小型设备提供可简单扩展的实施方案,并且提高安全性和可维护性,提高应用系统的性能,以及为开发者提供更多的开发工具。”JDK优化建议中是这么描述的。
2、轻量级的JSON API
这是利用JSON数据交换格式生成文档和数据流的一个接口,某些时候,JSON完全可以替代XML。“JSON可以在Web服务中用得上了,Java SE也将采用JSON数据格式,同时这也是Java 9中提供的最需要的功能了。”
3、系统进程管理
这次升级将对管理操作系统进程的API作一些提高和完善,目前的API只能强制开发者使用本地代码,然而这次升级也克服了这一限制。在Java SE 7中,对本地操作系统进程的操作有很大的限制,但是Java 9中新的API也需要考虑不同操作系统的差异,尤其是Windows。“API的设计需要适应不同操作系统的移动设备,并且要能在这些设备上部署和应用。同时也应该要考虑同一个操作系统中多个Java虚拟机的情况。”JEP文档中是这么描述的。
4、完善竞争锁
该目标是为了提升访问对象时的线程竞争处理,文档中是这样说的:“完善锁之间的竞争对现实中的应用系统是非常有益的。”
5、分段代码缓存
这主要是将代码缓存分割成几块,每一块都包含编译好的代码,这样不仅可以提高程序运行时的性能,而且还更容易扩展。
6、智能Java编译器
该项目主要是为了提高Java编译器的性能,使其能够在编译大型项目上超越JDK,当前的实施方案确实非常棒,不仅提高了编译速度,而且还有增量编译的功能。但是由于代码质量和稳定性还尚未令人满意,所以该项目还未对外发布,敬请期待。
1、模块化的源代码
JDK源代码将以模块化的形式组织起来,生成系统将会在模块化编译上得到增强,并且在生成的时候模块之间的边界也将被强制区分开来。“Jigsaw的目标是为Java SE平台设计并实现标准的模块化系统,并将该系统应用到自身平台和JDK当中去。它的主要目标是为一些小型设备提供可简单扩展的实施方案,并且提高安全性和可维护性,提高应用系统的性能,以及为开发者提供更多的开发工具。”JDK优化建议中是这么描述的。
2、轻量级的JSON API
这是利用JSON数据交换格式生成文档和数据流的一个接口,某些时候,JSON完全可以替代XML。“JSON可以在Web服务中用得上了,Java SE也将采用JSON数据格式,同时这也是Java 9中提供的最需要的功能了。”
3、系统进程管理
这次升级将对管理操作系统进程的API作一些提高和完善,目前的API只能强制开发者使用本地代码,然而这次升级也克服了这一限制。在Java SE 7中,对本地操作系统进程的操作有很大的限制,但是Java 9中新的API也需要考虑不同操作系统的差异,尤其是Windows。“API的设计需要适应不同操作系统的移动设备,并且要能在这些设备上部署和应用。同时也应该要考虑同一个操作系统中多个Java虚拟机的情况。”JEP文档中是这么描述的。
4、完善竞争锁
该目标是为了提升访问对象时的线程竞争处理,文档中是这样说的:“完善锁之间的竞争对现实中的应用系统是非常有益的。”
5、分段代码缓存
这主要是将代码缓存分割成几块,每一块都包含编译好的代码,这样不仅可以提高程序运行时的性能,而且还更容易扩展。
6、智能Java编译器
该项目主要是为了提高Java编译器的性能,使其能够在编译大型项目上超越JDK,当前的实施方案确实非常棒,不仅提高了编译速度,而且还有增量编译的功能。但是由于代码质量和稳定性还尚未令人满意,所以该项目还未对外发布,敬请期待。
相关文章推荐
- struts2.2.1.1配置教程
- java.lang.NoSuchMethodError: java.util.concurrent.ConcurrentHashMap.keySet()Ljava/util/concurrent/Co
- Spring
- “最长上升子序列,最大连续子序列和,最长公共子串”的Java实现
- java学习笔记(二)
- Java之DataInputStream和DataOutputStream-用流操作基本数据类型
- Java多线程系列--“JUC集合”03之 CopyOnWriteArraySet
- Java实现QPS控制
- Java [Leetcode 94]Binary Tree Inorder Traversal
- Spring 学习转载
- 图文介绍如何在Eclipse统计代码行数
- spring ioc
- MyEclipse6.5安装SVN插件的三种方法 以及基本操作
- Myeclipse10不支持编译器1.7
- Java中getBytes()的用法
- Spring IOC
- hadoop java.lang.RuntimeException: java.lang.NoSuchMethodException
- eclipse过一会就出现Adb connection Error:远程主机强迫关闭了一个现有的连接。
- Java泛型初探
- java: 异常处理