Java10尝鲜
前言
今天听说Java 10 已正式发布了,赶着热闹的心来“尝鲜”JDK10。Java 的版本发布周期变更为每六个月一次,并且承诺不会跳票。新的发布周期也会严格遵循时间点,将在每年的 3 月份和 9 月份发布.。这样JDK的版本更新越来越快了。话说都在用那个版本?
Java 10 是采用新发布周期的第一个版本,提供了 109 项新特性,其中最备受关注的莫过于局部变量的类型推断。
下载和安装
-
下载
注意目前感觉下载不是很稳定,下载完了,请确保文件的完整性使用
certutil -hashfile 你的文件全路径 SHA256
命令行校验一下。 -
安装
![安装中])安装基本是下一步,但是JDK好像从JDK8以后就不用配置环境变量了,他会在设置一个自己变量,对于和我一样用强迫症的人可以重新设置一下。
新特性体验
- 工具准备
- Eclipse4.7.3(安装java-10-support-oxygen的插件)
- IntelliJ IDEA 2017.3 EAP(建议在这个版本之前)
在开始这个之前,一直在寻求开发工具的支持,对于IDE中IDEA对于JDK的支持较好,目前eclipse的支持还在停留在插件的支持,IDEA新版本好像可以支持,个人也是使用了eclipse软件安装 (毕竟安装下载小)。
- 安装过程
安装过程,比较简单...
体验Java10的新特性
JDK在这次更新中更新了109项更新,对于部分演示,后期也会逐渐完善。
-
JEP 286: 局部变量的类型推断
运行结果package com.weir.jdk10; public class demo01 { public static void main(String[] args) { var a = 10; System.out.println(a); } }
总结:var在Java作为了保留关键字。
其他的更新
-
JEP 286: 局部变量的类型推断。该特性在社区讨论了很久并做了调查,可查看 JEP 286 调查结果
-
JEP 296: 将 JDK 的多个代码仓库合并到一个储存库中
-
JEP 304: 垃圾收集器接口。通过引入一个干净的垃圾收集器(GC)接口,改善不同垃圾收集器的源码隔离性。
-
JEP 307: 向 G1 引入并行 Full GC
-
JEP 310: 应用类数据共享。为改善启动和占用空间,在现有的类数据共享(“CDS”)功能上再次拓展,以允许应用类放置在共享存档中
-
JEP 312: 线程局部管控。允许停止单个线程,而不是只能启用或停止所有线程
-
JEP 313: 移除 Native-Header Generation Tool (javah)
-
JEP 314: 额外的 Unicode 语言标签扩展。包括:cu (货币类型)、fw (每周第一天为星期几)、rg (区域覆盖)、tz (时区) 等
-
JEP 316: 在备用内存设备上分配堆内存。允许 HotSpot 在备用内存设备上分配 Java 对象堆
-
JEP 317: 基于 Java 的 JIT 编译器(试验版本)
-
JEP 319: 根证书。开源 Java SE Root CA 程序中的根证书
-
JEP 322: 基于时间的版本发布模式。“Feature releases” 版本将包含新特性,“Update releases” 版本仅修复 Bug