Java 9的新特性java模块系统(Java Platform Module System)。 模块系统的使用: HTTP 2 客户端:HTTP/2标准是HTTP协议的最新版本,新的 HTTPClient API 支持 WebSocket 和 HTTP2 流以及服务器推送特性。 新的版本号格式:$MAJOR.$MINOR.$SECURITY.$PATCH private instance methods:方法上可以使用@SafeVarargs注解。
Javadoc
JVM
REPL (JShell):交互式编程环境。 响应式流(Reactive Streams) API: Java 9中引入了新的响应式流 API 来支持 Java 9 中的响应式编程。 进程 API: 改进的 API 来控制和管理操作系统进程。引进 java.lang.ProcessHandle 及其嵌套接口 Info 来让开发者逃离时常因为要获取一个本地进程的 PID 而不得不使用本地代码的窘境。 改进的 Stream API:改进的 Stream API 添加了一些便利的方法,使流处理更容易,并使用收集器编写复杂的查询。 Java 10的新特性说了这么多,看Java 10都会有哪些特性来改变我们写代码的方式呢?! 1. 局部变量类型推断 局部变量类型推断可以说是Java 10中最值得注意的特性,Java语言开发人员为了简化Java应用程序的编写而采取的又一步简化,如下图所示。 //之前的代码格式URL url = new URL('http://www.oracle.com/'); URLConnection conn = url.openConnection(); Reader reader = new BufferedReader( new InputStreamReader(conn.getInputStream()))//java10中用var来声明变量var url = new URL('http://www.oracle.com/'); var conn = url.openConnection(); var reader = new BufferedReader( new InputStreamReader(conn.getInputStream())); 这个新功能将为Java增加一些语法糖 - 简化它并改善开发者体验。新的语法将减少与编写Java相关的冗长度,同时保持对静态类型安全性的承诺。 局部变量类型推断将引入'var'关键字,也就是你可以随意定义变量而不必指定变量的类型,如: 将被下面这个新语法所取代: 看完是不是有点JS的即视感???越来越像JS了吗?!虽然类型推断在Java中不是一个新概念,但在局部变量中确是很大的一个改进。 说到类型推断,从JDK 5引进泛型,到JDK 7的'<>'操作符允许不绑定类型而初始化List,再到JDK 8的Lambda表达式,再到现在JDK 10的局部变量类型推断,Java类型推断正大刀阔斧的向前发展。 局部变量类型推荐仅限于如下使用场景:
Java官方表示,它不能用于以下几个地方:
2. GC改进和内存管理 JDK 10中有2个JEP专门用于改进当前的垃圾收集元素。 第一个垃圾收集器接口是(JEP 304),它将引入一个纯净的垃圾收集器接口,以帮助改进不同垃圾收集器的源代码隔离。 预定用于Java 10的第二个JEP是针对G1的并行完全GC(JEP 307),其重点在于通过完全GC并行来改善G1最坏情况的等待时间。G1是J |
java1.6、java1.7、java1.8、java9、java10、java11、java12、java13新特性
最新推荐文章于 2025-05-21 16:16:35 发布