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 的新特性:
点我分享笔记