JDK10?转一篇文章过过瘾

工欲善其事,必先利其器。作为老牌军 Java 在发行二十多年的今天,战胜了 C 和 C++,成为诸多开发者的宠儿,且如今从其更新速度来看,也是不甘落后。

今年的 9 月 21 日,大家期待已久的 Java 9 正式发布,现在开发者即将在几个月后就可以使用下一代 Java —— Java 10。十二月中旬,计划中的 Java 10 开发工具包升级节奏已经逐渐放缓。所以在目前阶段,产品升级后只能修复 P1 到 P3 的错误(https://www.infoworld.com/article/3183502/java/oracle-sets-priorities-for-java-9-bug-fixes.html)。

JDK 10 何时发布?

JDK 10 是 Java 10 标准版的部分实现,将于 2018 年 3 月 20 日发布,改进的关键点包括一个本地类型推断、一个垃圾回收的“干净”接口。

Oracle 已经为 Java 设定了六个月的发行计划。之前本打算根据发行的年份和月份命名升级版和后续版,这样的话第一个版本就会被称为 Java 18.3, 但这个计划后来被中止了。

如何下载 JDK 10?

用户要先加入早期使用者计划,然后才可以下载 JDK 10 测试版:http://jdk.java.net/10

JDK 10 的新改进有哪些?

JDK 10 的主要功能包括:

  • 一个局部变量类型推断,通过增强语言特性将类型推断扩展到局部变量,目的是减少与编码相关的“仪式”,同时保持对静态类型的安全承诺。
  • 一个干净的垃圾收集器接口,用来改善垃圾收集器源代码之间的隔离效果,这样可以为HotSpot 虚拟机中的内部垃圾收集代码提供更好的模块化功能,也可以更容易向 HotSpot 添加新的垃圾收集器。
  • 并行、完整的 G1 垃圾收集器,通过实现并行性来改善最坏情况下的延迟问题。
  • 启用 HotSpot 将对象堆分配给用户指定的备用内存设备(如 NVDIMM 内存模块),这个特性也侧面预示了未来的系统可能会采用异构的内存架构。
  • 在 Linux / x64 平台上以实验性方式启用基于 Java 的即时编译器(https://www.infoworld.com/article/3187868/application-development/oracles-java-on-java-experiment-picks-up-steam.html)。
  • 将 JDK 的多个存储库合并成一个,简化开发。目前的代码库被分解成了多个库,容易出现源代码的管理问题。
  • 应用程序数据共享,通过跨进程共享通用类的元数据,减少空间占用及启动时长。
  • 线程本地握手,不执行全局 VM 安全点也能对线程执行回调,同时实现单线程停止回调。
  • JDK 提供了一组默认证书,开源 Java SE 的 CA程序,对开发人员更具吸引力。

JDK 10 的开发包括哪些阶段?

目前,Oracle 的 Java SE 下载页面(http://www.oracle.com/technetwork/java/javase/downloads/index.html)还没有提供对 JDK 10 的访问,因为在最终版本确认之前,JDK 10 还有一些其他的开发阶段,包括:

  • 2018 年 1 月 11 日:在所有支持的平台上,对所有计划完成至少一次的测试。
  • 2018 年 1 月 18 日:减速阶段,只修复“ showstopper ”的 Bug。
  • 2018 年 2 月 22 日:最终版本确认。

从 9 月 21 日期待已久的 JDK 9 版本发布开始,Oracle 就一直在计划 Java 的改进和升级,包括将于 2018 年 3 月到期的 Java 18.3 版本,这个版本将作为 Java 标准版的发布计划一部分。

Java 的长期路线图

以下是 Oracle 公司正在考虑的下一代产品、以及更高版本的 Java SE:

新的六月发行计划推出后,也就意味着不同版本的功能更新会间隔六个月。但是目前除了已经宣布的 JDK 10 之外,Oracle 还没有承诺在 Java 中提供其他新的功能。

对于明年即将推出的 Java 10,在 JDK 10 早期试用版发布后(https://www.oschina.net/news/90271/jdk-10),网络上观点不一:

@一刀:厉害了,悄无声息的就发布了 JDK10。 @WO不吹牛:9 还没开始用,10 又悄悄的来了,这速度太 6 了。 @半个克林姆:不觉明历, 对于我这种菜鸡来说, 好像并没有什么影响! @cky_Me:公司基本上用的还是1.6,1.7。 @东东-:快加上真泛型,删掉那堆没用的祖传模块

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java学习网

书写高质量代码之状态维护

状态之始 我们第一眼接触新事物所触发的思考方式,决定了以后我们看待这样事物的角度,进而影响更深层次的理解和行为。 编程相对于人类历史的进程而言,不过是个六七岁孩...

3685
来自专栏Pythonista

Python之路,Day1 - Python基础1

python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解...

1772
来自专栏最高权限比特流

漫谈计算机组成原理(一)程序是怎么跑起来的

我们知道,计算机是由软件和硬件共同组成的。没有硬件,软件就没有用武之地;没有软件,硬件就只能是一堆废铁。 而软件又分为两类:

2964
来自专栏用户画像

13年5月 软考笔记整理

虚拟存储器为了给用户提供更大的随机存储空间而采用的一种存储技术。它将内存(主存)与外存(辅存)结合使用,好像有一个容量巨大的内存储器,工作速度接近于主存,每位成...

1003
来自专栏云加头条

智能云上手指南:语音合成 API 快速接入

本文将为大家讲解如何上手智能云提供的智能语音识别服务。

1K2
来自专栏儿童编程

儿童编程“控制”部分学习总结

在任何编程语言中,控制部分都是非常重要的,也是体现编程语言神奇之处。在Scratch中同样如此。初次学习肯定会感觉有些抽象,但是在实际应用之中,则会体现出其功能...

1002
来自专栏ImportSource

设计模式-搞个接口,留有余地,让你我不再尴尬

设计模式,Design Patterns,Pattern,翻译为“模式”总感觉不够接地气,用今天的话来说可以叫“套路”。设计模式就是写代码的过程中一些常规打法和...

37412
来自专栏java一日一条

书写高质量代码之状态维护

我们第一眼接触新事物所触发的思考方式,决定了以后我们看待这样事物的角度,进而影响更深层次的理解和行为。

741
来自专栏互联网杂技

通俗讲解:缓存、缓存算法和缓存框架

1 引言 我们都听过 cache,当你问他们是什么是缓存的时候,他们会给你一个完美的答案,可是他们不知道缓存是怎么构建的,或者没有告诉你应该采用什么标准去选择缓...

3656
来自专栏Crossin的编程教室

【我问 Crossin】英语不好能不能学编程?

“我问 Crossin” 栏目会整理一些读者经常会问到的问题,统一作答。有比较具体的编程细节,也会有一些方向的建议,以及学习经验、编程小技巧的分享。 大家有想问...

3419

扫码关注云+社区

领取腾讯云代金券