jdk9 oracle,Java 平台,标准版 Oracle JDK 9 新功能(中)

本文导读

➤JDK 9 中部署的新功能

➤ JDK 9 中 Java 语言的新特性

➤ JDK 9 中 Javadoc 的新功能

➤ JDK 9 中 JVM 的新特性

➤ JDK 9 中 JVM 调优的新功能

JDK 9 中部署的新功能

不赞成使用Java插件

在Oracle JDK 9版本中弃用Java插件和关联的小应用程序技术。在JDK 9中仍然可用,这些技术将被考虑在将来的版本中从Oracle JDK和JRE中删除。

嵌入在网页中的Applet和JavaFX应用程序需要Java插件才能运行。考虑将这些类型的应用程序重新编写为Java Web Start或自包含的应用程序。

请参阅在Java平台标准版部署指南中将Java Applet迁移到Java Web Start和JNLP和自包含应用程序打包。

增强的Java控制面板

改进Java控制面板中选项的分组和显示。信息更容易找到,可用字段搜索,并且不再使用模态对话框。请注意,某些选项的位置已从先前版本的Java控制面板中更改。

请参阅在Java平台,标准版部署指南中Java控制面板。

JEP 275:

模块化Java

应用程序打包

将Project Jigsaw的功能集成到Java Packager中,包括模块感知和自定义运行时创建。

利用该jlink工具创建更小的包。

创建程序只能使用JDK 9运行时。不能使用早期版本的JRE来运行打包应用程序。

请参阅在Java平台,标准版部署指南中JRE的定制和打包的模块化应用。

JEP 289:

弃用Applet API

弃用Applet API,因为Web浏览器供应商删除对Java浏览器插件的支持,导致这个功能越来越不太有用。在JDK 9中这个功能仍然可用,Applet类将在以后的版本中被考虑删除。考虑将applet重写为Java Web Start或自包含的应用程序。

请参阅在Java平台,标准版部署指南中将Java Applet迁移到Java Web Start和JNLP和自包含应用程序打包。

JDK 9 中 Java 语言的新特性

Java SE 9中包含了一些非常小的语言更改。

JEP 213:

Milling Project Coin

确认一些小的变化:

• 允许@SafeVargs私有化实例方法。

• 允许有效地将最终变量用作try-with-resources语句中的资源。

• 如果推断类型的参数类型是可表示的,则允许具有匿名类的diamond 。

• 完成从Java SE 8开始的,从合法的标识符名称集合中,删除下划线。

• 添加对私有接口方法的支持。

请参阅在Java平台,标准版的Java语言的更新中Java语言在Java SE 9中的改变。

JDK 9 中 Javadoc 的新功能

Javadoc增强功能包括以下内容:简化的Doclet API,Javadoc搜索,支持生成HTML5输出以及支持模块系统中的文档注释。

JEP 221:

简化的Doclet API

用新的简化API替代旧的Doclet API,利用其他标准的现有API。标准doclet已被重写,以使用新的Doclet API。

注意:

现有的API和旧的标准doclet可用,但尚未更新以支持新的语言功能,如模块。

JEP 224:

HTML5 Javadoc

支持生成HTML5输出。要获得完全兼容的HTML5输出,请确保文档注释中提供的任何HTML内容都符合HTML5。

JEP 225:

Javadoc Search

为生成的API文档提供搜索框。使用此搜索框查找文档中的程序元素,标记的单词和短语。

JEP 261:模块系统

支持模块声明中的文档注释。包括新的命令行选项来配置要记录的模块集,并为任何正在记录的模块生成新的摘要页面。

JDK 9 中 JVM 的新特性

这些是JDK 9中的JVM增强功能。

JEP 165:

编译器控制

提供通过编译器指令选项控制JVM编译的方法。控制的级别是运行时管理和方法的指定。编译器控件取代了CompileCommand并向后兼容。

请参阅在Java平台,标准版Java虚拟机向导中编译器控制。

JEP 197:

分段代码缓存

将代码高速缓存分成不同的段,每个段都包含特定类型的编译代码,以提高性能并启用未来的扩展。

请参阅在Java平台,标准版工具参考中java。

JEP 276:

语言定义对象模型

的动态链接

在运行时动态链接高级对象操作,例如读取属性,编写属性和调用函数到相应的目标方法句柄。它根据传递的值的实际类型将这些操作链接到目标方法句柄。这些对象操作表示为invokedynamicsites。

虽然java.lang.invoke提供了一个用于动态链接invokedynamic调用站点的低级API ,但它并没有提供一种方法来表达对象的更高级别操作,也不提供实现它们的方法。

使用包jdk.dynalink,您可以实现其表达式包含动态类型(无法静态确定的类型)的编程语言,并将这些动态类型的操作表示为invokedynamic调用站点(因为语言的对象模型或类型系统不会紧密匹配JVM)。

JDK 9 中 JVM 调优的新功能

这些是JDK 9中的JVM调优增强功能。

提高G1的可用性,

确定性和性能

增强垃圾回收(G1)垃圾收集器,自动确定几个重要的内存回收设置。以前,必须手动设置这些设置才能获得最佳结果。此外,还解决了G1垃圾收集器的可用性,确定性和性能问题。

JEP 158:

统一JVM记录

为JVM的所有组件引入通用日志记录系统。

请参阅Java Platform,Standard Edition Tools Reference中的-Xloggc java选项。

JEP 214:

删除JDK 8中不推荐

使用的GC组合

删除在JDK 8中不推荐使用的垃圾收集器(GC)组合。

这意味着以下GC组合不再存在:

• DefNew + CMS

• ParNew + SerialOld

• 增量CMS

同时标记扫描(CMS)的“前景”模式也已被删除。以下命令行标志已被删除:

-Xincgc

-XX:+CMSIncrementalMode

-XX:+UseCMSCompactAtFullCollection

-XX:+CMSFullGCsBeforeCompaction

-XX:+UseCMSCollectionPassing

命令行标志-XX:+UseParNewGC不再有效果。ParNew只能与CMS一起使用,CMS需要ParNew。因此,该-XX:+UseParNewGC标志已被弃用,将来可能会被删除。

JEP 248:使G1成为

默认垃圾收集器

在第32和64位服务器配置上,将Garbage-First (G1)作为默认垃圾收集器(GC)。使用诸如G1之类的低暂停收集器为大多数用户提供比面向吞吐量的收集器(例如以前是默认值的Parallel GC)更好的整体体验。

请参阅在Java平台,标准版的HotSpot虚拟机垃圾收集调优指南中 Garbage-First 垃圾收集器

JEP 271:

统一GC记录

使用JEP 158中引入的统一JVM日志记录框架对垃圾收集(GC)进行日志记录。GC记录以与当前GC记录格式一致的方式重新实现; 然而,新旧格式之间存在一些差异。

请参阅在Java平台,标准版工具参考中启用日志记录使用JVM统一日志记录框架。

JEP 291:弃用并发

标记扫描(CMS)

垃圾收集器

不推荐使用并发标记扫描(CMS)垃圾回收器。使用该-XX:+UseConcMarkSweepGC选项在命令行上请求时发出警告消息。垃圾回收(G1)垃圾收集器旨在替代大多数CMS使用。

下期导读☟

➤JDK 9中核心库的新功能

➤ Nashorn在JDK 9中的新功能

➤ JDK 9中客户端技术的新功能

➤ JDK 9中的国际化新进展

➤ 文档辅助功能

英文原文☟

0818b9ca8b590ca3270a3433284dd417.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值