JDK10 是 Java 生态在 2018 年 3 月发布的重要版本,作为 Java 采用半年度发布节奏后的首个版本,它虽非 LTS(长期支持)版本,却承载了诸多关键优化——既有简化开发的语法特性,也有提升 JVM 性能的底层改进,更有完善 API 的实用更新。本文将针对开发者日常开发场景,盘点 JDK10 最值得关注的核心新特性,搭配代码示例和实际应用场景,帮大家快速掌握其价值与用法。
一、核心语法特性:局部变量类型推断(var 关键字)
这是 JDK10 最受开发者关注的新特性,也是唯一直接影响日常编码风格的语法优化——引入 var 关键字,允许开发者声明局部变量时省略显式类型,由编译器根据初始化表达式自动推断变量类型,减少冗余代码,提升可读性。
1.1 基本用法
在 JDK10 之前,我们声明局部变量必须显式指定类型,即便右侧已经明确了具体实现:
// JDK10 之前的写法(冗余)
ArrayList<String> list = new ArrayList<String>();
URL url = new URL("http://www.oracle.com/");
URLConnection conn = url.openConnection();
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
JDK10 中使用 var 后,代码可简化为:
// JDK10 简化写法(编译器自动推断类型)
var list = new ArrayList<String>(); // 推断为 ArrayList<String>
var url = new URL("http://www.oracle.com/"); // 推断为 URL
var conn = url.openConnection(); // 推断为 URLConnection
var reader ( (conn.getInputStream()));


