Java 9 新特性

Java 9 �布于 2017 年 9 月 22 日,带�了很多新特性,其中最主�的�化是已�实现的模�化系统。接下�我们会详细介� Java 9 的新特性。

Java 9 新特性

  • 模å�—系统:模å�—是一个包的容器,Java 9 最大的å�˜åŒ–之一是引入了模å�—系统(Jigsaw 项目)。
  • REPL (JShell):交互å¼�编程环境。
  • HTTP 2 客户端:HTTP/2标准是HTTPå��议的最新版本,新的 HTTPClient API 支æŒ� WebSocket å’Œ HTTP2 æµ�以å�Šæœ�务器推é€�特性。
  • 改进的 Javadoc:Javadoc 现在支æŒ�在 API 文档中的进行æ�œç´¢ã€‚å�¦å¤–,Javadoc 的输出现在符å�ˆå…¼å®¹ HTML5 标准。
  • 多版本兼容 JAR 包:多版本兼容 JAR 功能能让你创建仅在特定版本的 Java 环境中è¿�行库程åº�时选择使用的 class 版本。
  • 集å�ˆå·¥åŽ‚æ–¹æ³•ï¼šList,Set å’Œ Map 接å�£ä¸­ï¼Œæ–°çš„é�™æ€�工厂方法å�¯ä»¥åˆ›å»ºè¿™äº›é›†å�ˆçš„ä¸�å�¯å�˜å®žä¾‹ã€‚
  • ç§�有接å�£æ–¹æ³•:在接å�£ä¸­ä½¿ç”¨privateç§�有方法。我们å�¯ä»¥ä½¿ç”¨ private 访问修饰符在接å�£ä¸­ç¼–写ç§�有方法。
  • 进程 API: 改进的 API æ�¥æŽ§åˆ¶å’Œç®¡ç�†æ“�作系统进程。引进 java.lang.ProcessHandle å�Šå…¶åµŒå¥—接å�£ Info æ�¥è®©å¼€å�‘者逃离时常因为è¦�获å�–一个本地进程的 PID 而ä¸�å¾—ä¸�使用本地代ç �的窘境。
  • 改进的 Stream API:改进的 Stream API 添加了一些便利的方法,使æµ�处ç�†æ›´å®¹æ˜“,并使用收集器编写å¤�æ�‚的查询。
  • 改进 try-with-resources:如果你已ç»�有一个资æº�是 final 或等效于 final å�˜é‡�,您å�¯ä»¥åœ¨ try-with-resources 语å�¥ä¸­ä½¿ç”¨è¯¥å�˜é‡�,而无需在 try-with-resources 语å�¥ä¸­å£°æ˜Žä¸€ä¸ªæ–°å�˜é‡�。
  • 改进的弃用注解 @Deprecated:注解 @Deprecated å�¯ä»¥æ ‡è®° Java API 状æ€�,å�¯ä»¥è¡¨ç¤ºè¢«æ ‡è®°çš„ API 将会被移除,或者已ç»�ç ´å��。
  • 改进钻石æ“�作符(Diamond Operator) :匿å��ç±»å�¯ä»¥ä½¿ç”¨é’»çŸ³æ“�作符(Diamond Operator)。
  • 改进 Optional 类:java.util.Optional 添加了很多新的有用方法,Optional å�¯ä»¥ç›´æŽ¥è½¬ä¸º stream。
  • 多分辨率图åƒ� API:定义多分辨率图åƒ�API,开å�‘者å�¯ä»¥å¾ˆå®¹æ˜“çš„æ“�作和展示ä¸�å�Œåˆ†è¾¨çŽ‡çš„å›¾åƒ�了。
  • 改进的 CompletableFuture API : CompletableFuture 类的异步机制å�¯ä»¥åœ¨ ProcessHandle.onExit 方法退出时执行æ“�作。
  • è½»é‡�级的 JSON API:内置了一个轻é‡�级的JSON API
  • å“�应å¼�æµ�(Reactive Streams) API: Java 9中引入了新的å“�应å¼�æµ� API æ�¥æ”¯æŒ� Java 9 中的å“�应å¼�编程。

更多的新特性�以�阅官网:What's New in JDK 9

JDK 9 下载地�:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-doc-downloads-3850606.html

在关于 Java 9 文章的实例,我们�使用 jdk 1.9 环境,你�以使用以下命令查看当� jdk 的版本:

$ java -version
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+163)
Java HotSpot(TM) 64-Bit Server VM (build 9-ea+163, mixed mode)
接下�我们将详细为大家简介 Java 9 的新特性:
�� 特性
1 模�系统
2 REPL (JShell)
3 改进的 Javadoc
4 多版本兼容 JAR 包
5 集�工厂方法
6 �有接�方法
7 进程 API
8 Stream API
9 try-with-resources
10 @Deprecated
11 内部类的钻石�作符(Diamond Operator)
12 Optional ç±»
13 多分辨率图� API
14 CompletableFuture API