在我们JDK9还没尝试的情况下,已经到JDK10了,必须跟进脚步,我最近要准备采用JDK10开发个东西了。
开局一张图,剩下全考编。
Java 目前是世界上使用最广泛的编程语言之一,在全球拥有超过1200万的开发人员。2017年,甲骨文宣布,未来 Java 将每六个月发布一次更新,从而更加及时地增加新功能或修复问题。
Java10作为新周期的第一个版本,提供了109项新特性,其中最受关注的则是局部变量的类型推断。
对于开发者来说,这是 JDK10 唯一的真正特性。它向 Java 中引入在其他语言中很常见的 var,比如 JavaScript 。只要编译器可以推断此种类型,你不再需要专门声明一个局部变量的类型。
开发者将能够声明变量而不必指定关联的类型。比如:List list = new ArrayList ();
Stream stream = getStream();
它可以简化为:var list = new ArrayList ();
var stream = getStream();
局部变量类型推断将引入“ var ”关键字的使用,而不是要求明确指定变量的类型,我们俗称“语法糖”。
这就消除了我们之前必须执行的 ArrayList 类型定义的重复。我鼓励你们去读 JEP ,因为上面有一些关于这个句法是否能用的规则。
其实我们在JDK7,我们需要:List list = new ArrayList ();
但是在JDK8,我们只需要:List list = new ArrayList <>();
所以这是一个逐步的升级。也是人性化的表现与提升。
有趣的是,需要注意 var不能成为一个关键字,而是一个保留字。这意味着你仍然可以使用 var 作为一个变量,方法或包名,但是现在(尽管我确定你绝不会)你不能再有一个类被调用。