Java 9 - 概述


JAVA 9(又名 jdk 1.9)是 JAVA 编程语言开发的主要版本。它的初始版本于 2017 年 9 月 21 日发布。Java 9 发布的主要目标是 -

  • 使 JDK 和 Java 标准版平台模块化,以便可以很好地调用到小型计算设备。

  • 提高 JDK 和 Java 实现的整体安全性。

  • 使 Java SE 和 EE 平台的 Java 代码库和大型应用程序的构建过程和维护变得容易。

  • 设计并实现一个Java平台的标准模块系统,可以轻松地在平台和JDK上应用。

新功能

Java 8 添加了 90 多项增强功能,最重要的增强功能如下:

  • 模块- 作为模块引入的一种新型 Java 编程组件,它是一个命名的、自描述的代码和数据集合。

  • REPL (JShell) - 添加到 Java 平台的读取-求值-打印循环 (REPL) 功能。

  • HTTP 2 客户端- 新的 HTTPClient API 支持 websockets 和 HTTP 2 流以及服务器推送功能。

  • 改进的 JavaDocs - 支持 HTML5 输出生成。提供生成的 API 文档的搜索框。

  • Multirelease JAR - 增强 JAR 格式,以便多个特定于 Java 版本的类文件可以共存于单个存档中。

  • 集合工厂方法- List、Set 和 Map 接口的新静态工厂方法,用于创建这些集合的不可变实例。

  • 私有接口方法- 具有私有和私有静态方法的增强接口。

  • 进程 API 改进- 改进的 API 用于控制和管理操作系统进程。

  • 流 API 改进- 通过允许过滤传入的对象序列化数据流来增强安全性和稳健性。

  • Try With Resources 改进- 现在最终变量可以用作 try-with-resources 语句中的资源。

  • 增强的 @Deprecated 注释- 修改了 @Deprecated 注释,以提供有关 API 的状态和预期处置的更多信息。

  • 内部类菱形运算符- 如果可以表示推断类型的参数类型,则允许菱形运算符与匿名类一起使用。

  • 可选类改进- java.util.Optional 类中添加了新的有用方法。

  • 多分辨率图像 API - 支持将一组不同分辨率的图像封装到单个多分辨率图像中。

  • CompletableFuture API 改进- CompletableFuture 类的异步机制可以在进程使用 ProcessHandle.onExit 方法退出时执行操作。

  • 轻量级 JSON - 引入了一个轻量级 API,用于通过 java 9 中的 json 消费和生成文档和数据流。

  • Reactive Streams API - Java SE 9 中引入了新的 Reactive Streams API,以支持 java 9 中的反应式编程。