Java 9 - 概述

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

  • 制作JDK和Java Standard Edition平台基于模块化,可以很好地适应小型计算设备.

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

  • 为JAVA SE和EE平台轻松构建java代码库和大型应用程序的构建过程和维护.

  • 设计和实现Java平台的标准模块系统,可以轻松地应用于平台和JDK.

新功能

Java 8中增加了90多项增强功能,下面提到了最重要的增强功能;

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

  • REPL(JShell) : 添加到Java平台的Read-Eval-Print Loop(REPL)功能.

  • HTTP 2 Client : 支持websockets和HTTP 2流以及服务器推送功能的新HTTPClient API.

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

  • Multirelease JAR : 增强JAR格式,以便多个Java发行版特定版本的类文件可以共存于一个存档中.

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

  • 专用接口方法 : 增强了私有和私有静态方法的接口.

  • 流程API改进 : 改进的API来控制和管理操作系统进程.

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

  • 尝试使用资源改进 : 现在,最终变量可以在try-with-resources语句中用作资源.

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

  • 内部类钻石操作员 : 如果可以表示推断类型的参数类型,则允许菱形运算符与匿名类一起使用.

  • 可选类改进 &减去;新的有用方法被添加到java.util.Optional类.

  • Multiresolution Image API : 支持将具有不同分辨率的一组图像封装到单个多分辨率图像中.

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

  • 轻量级JSON : 引入了一个轻量级API,用于通过java 9中的json来使用和生成文档和数据流.

  • Reactive Streams API :  Java SE 9中引入了一个新的Reactive Streams API,以支持java 9中的反应式编程.