写点什么

Java 10 发布了第一个候选版本,新特性一览

  • 2018-03-05
  • 本文字数:1473 字

    阅读完需:约 5 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

近日,期待已久、没有跳票的 JDK 10 发布了其第一个候选版本,官方表示第二个候选版本将在 3 月份发布。JDK 10 是 Java SE 10 的实现,将在 2018 年 3 月 20 号发布正式版本。其关键改进包括局部类型推断和整洁的垃圾回收接口。在同意加入早期采用者计划后,用户可以在官网下载体验 ( http://jdk.java.net/10/)。

之前聊聊架构有报道过,新的一年,Java 为了更快地迭代,以及跟进社区反馈,已经将版本发布周期变更为每六个月一次,并且承诺不会跳票。

JDK 10 中的关键特性包括:

  • 局部变量类型推断,用于增强语言以将类型推断扩展到局部变量。其目的是减少与编码相关的“形式”,同时保持静态类型安全。
  • 一个整洁的垃圾回收接口,提升不同垃圾回收器的源代码隔离。这样做是为了更好地模块化 HotSpot 虚拟机中的内部垃圾回收代码,使向 HotSpot 添加新的垃圾回收器更加容易。
  • G1 垃圾回收器的并行完整垃圾回收。其目的是通过实现并行性来改善最坏情况下的延迟。
  • 使 HotSpot 能将对象堆分配给用户指定的备用内存设备(例如 NVDIMM 内存模块)。该功能预示着,未来的系统可能具有异构的内存架构。
  • 使 Grall 基于 Java 的及时编译器能实验性用于 Linux/x64 平台。
  • 将众多 JDK 仓库合并到一个仓库中,以简化开发。直到现在,代码库一直分解为多个仓库,导致源代码管理问题。
  • 应用程序类数据共享,通过跨进程共享通用类元数据来减少占用空间。启动时间也得到了改善。
  • 线程本地握手,在不执行全局 VM 安全点的情况下对线程执行回调。可以停止单个线程,而不是停全部线程或一个不停。
  • 在 JDK 中提供一组默认的根证书颁发机构证书。目标是开源 Oracle 的 Java SE Root CA 程序中的根证书,以使 OpenJDK 对开发人员更具吸引力。

Oracle 的 Java SE 下载页面尚没有 JDK 10。但是,在最终版本发布之前,JDK 10 的开发还有其他阶段。这些包括:

  • 2018 年 1 月 11 号:在所有支持的平台上至少完成一次所有计划的测试。
  • 2018 年 1 月 18 号:进行第二季度,只修复致命缺陷。
  • 2018 年 2 月 22 号:最终候选发布版。

长期 Java 路线图

以下是 Oracle 说后续 Java SE 版本要考虑的新特性:

  • Amber 项目是一个孵化器,针对较小的、生产力导向的语言特性,包括:局部变量类型推断,减少 Java 代码的形式;增强枚举,通过在枚举中允许类型变量和对枚举常量执行更为清晰的类型检查来提高 enum 构造的表现力;lambda leftover,提高 lambda 和方法引用的可用性。
  • Panama 项目互连 JVM 和本地代码,主要是 JVM 本地函数调用和 JVM 本地数据访问。
  • Valhalla 是高级 Java 虚拟机和语言特性候选项的孵化器项目,包括值类型和泛型具体化。
  • Loom 项目旨在减少编写并发应用程序的复杂性。它要求添加替代的用户模式线程实现、定界延续(delimited continuation)以及涉及调用堆栈操作的其他构造。这个提议的主要目标是提供线程的替代实现,由用 Java 编写的调度器管理。普通 Java 线程编程模型将被保留下来,而性能将得到改善并且占用空间减少。

根据这个新的六个月发布时间表,错过这次发布的功能可能会延迟六个月在下一个发行版发布。除了针对 JDK 10 宣布的内容外,Oracle 还没有承诺何时兑现任何新提出的特性。

查看原文链接: https://www.infoworld.com/article/3230507/java/java-jdk-10-what-new-features-to-expect-in-the-next-java.html

感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2018-03-05 18:005359
用户头像

发布了 33 篇内容, 共 12.4 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

软件测试/测试开发丨Docker 搭建Web服务器nginx

测试人

nginx Docker 软件测试 自动化测试 测试开发

2023企业上云暨算云融合产业大会在京召开

中国IDC圈

算力 可信云

北京国家会计学院聂兴凯:用友BIP事项会计助力企业迈入智能会计时代

用友BIP

智能会计 价值财务

阿里秀MySQL高端玩法,300页MySQL调优文档GitHub开源即巅峰

Java MySQL 数据库

2023年“开放原子校源行”项目正式启动,腾讯大力支持开源人才培养

科技热闻

硬核!GitHub置顶102W字Redis高手心法笔记

Java 数据库 redis 缓存 面试

三思光电入选浙江省2023数字化生产制造示范项目名单!

电子信息发烧客

软件测试/测试开发丨应用打包还是测试团队老大难问题?

测试人

软件测试 自动化测试 测试开发

MySQL多版本并发控制MVCC实现原理

Java MySQL 数据库 MVCC

深入理解JVM运行机制与GC机制

Java JVM 虚拟机 GC

LeaRun低代码开发平台 赋能企业快速落地BI大屏

力软低代码开发平台

关于编译的重要概念总结

timerring

编译器

【送猫超卡、阿里云代金券】动手体验 SAE+云效 10 分钟快速打通 CI/CD 流水线

阿里巴巴云原生

阿里云 Serverless 云原生

各界伙伴畅谈展望,OpenCloudOS发布首个全自研版本

科技热闻

三次迭代终放“大招”,Themis Pro版即将问世

西柚子

Spring MVC 之 HttpMessageConverter

Java spring Spring MVC

阿里云EMAS移动测试最佳实践|马来西亚第一大电子钱包通过EMAS测试提效6倍

移动研发平台EMAS

云计算 阿里云 移动研发平台 移动测试

喜讯!华秋电子荣获深圳市半导体行业协会优秀合作奖

华秋电子

数智时代的来临,养老行业接入人工智能技术已是势不可挡

加入高科技仿生人

人工智能 AI 养老服务 养老

软件测试/测试开发丨必知必会的Docker 命令

测试人

Docker 软件测试 自动化测试 测试开发

软件测试/测试开发丨必知必会的Docker 命令

测试人

Docker 软件测试 自动化测试 测试开发

# 架构实战营-模块1-作业

Geek_e948d4

GitHub开源大厂缓存架构Redis优化的文档,900页全是干货

Java 数据库 redis 缓存

快速玩转 CNStack 2.0 流量防护

阿里巴巴云原生

阿里云 云原生 CNStack

北京国家会计学院副教授王亚星:智能会计和价值财务有力支撑企业高质量发展

用友BIP

最强嘴替:新任技术管理者如何快速成长,完成转型逆袭?

LigaAI

技术管理 管理者 逆袭 技术人成长 企业号 4 月 PK 榜

【转载】亚信科技亮相中国高速公路信息化大会,与云南云通数联达成战略合作

亚信AntDB数据库

AntDB AntDB数据库 企业号 4 月 PK 榜

愿我们心中都有信念,眼里都有光芒

禅道项目管理

团队管理 项目管理 敏捷开发

海尔牵头!又一国家重点研发计划启动!

Openlab_cosmoplat

人工智能 开源项目 开源社区

统一观测丨使用 Prometheus 监控 Nginx Ingress 网关最佳实践

阿里巴巴云原生

阿里云 云原生 Prometheus

Java 10发布了第一个候选版本,新特性一览_语言 & 开发_Paul Krill_InfoQ精选文章