设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 开源资讯 查看内容

2018年Java平台发布计划之新特性展望

2018-1-14 13:34| 发布者: joejoe0332| 查看: 1220| 评论: 0|原作者: oschina|来自: oschina

摘要: 过去一年 Java 发生了许多变化,其中一部分原因在于推迟了一年的 Java 9 的推出。但是,随着时间的推移,人们发现,比起 Java 9 的推出,Java 版本发布周期的变更意义更为重大。前段时间公布的 JDK 版本发布计划显示 ...

过去一年 Java 发生了许多变化,其中一部分原因在于推迟了一年的 Java 9 的推出。但是,随着时间的推移,人们发现,比起 Java 9 的推出,Java 版本发布周期的变更意义更为重大。

前段时间公布的 JDK 版本发布计划显示,Java 发布周期变更为每六个月一次,这意味着 2018 年 Java 将发布两个 Java 版本。第一个版本是 Java 10,第二个版本是 Java 11。

考虑到新版本的推出将严格遵循时间线,预计每个新版本发布的 Java 特性将比起之前有所缩减。也就是说,Java 10 的新特性会比之前版本的新特性要少。

之前的文章还对 Java 10 的新特性进行了解密

至于 Java 11 将会有哪些新功能,目前还无法确定。我们只是将以下功能纳入了考虑范围内:

随着发布日期临近,该特性列表后续一定会被补充。不过,该列表目前还未提及 Java 值类型。这也不奇怪,因为实现值类型需要对 Java 语言本身和运行时做出重大更新,还要对 Java 类型系统进行重构。

虽然当前原型已经工作,但要特{敏感词}付还需要花很长一段时间。当前的状态至适用于低级别的平台开发者,和一些惯于使用反射或 MethodHandle 工具的开发者。虽然值类型将作为 Java 11 的一部分发布,但 Oracle 尚未透露任何有关该特性预期发布时间的消息。

如果值类型并未作为 Java 11 特性发布,这将会产生连锁反应。包含值类型的首个长期支持(LTS)版本将不会在 2021 年 9 月前发布。

Java 11 中是否会有数据类data classes)还不确定。Java 语言架构师 Brian Goetz 曾这样说道:

数据类将用于解决类的表示与 API 合约间存在的复杂间接关系。通过使用数据类,编译器可以填入一些普通类成员

数据类提案与 Scala 的 Case 类有些相似。Goetz 表示,数据类的设计可能会有一些变动,它的整体语义会比我们现在看到的更加深入。目前的数据类概念在开发过程中与模式匹配功能相联系,但是它们有可能在不同的版本中提供。

与以上两个特性相关的是,未来可能会对 Switch 形式做改进,Switch 语句块将可作为表达式或声明使用。该特性有望在 Java 11 实现,但目前看来,仍然是一个 JEP 草案。

预定在 9 月发布的版本,其特性全部完成时间是 2018 年 6 月。因此,我们还需要等待数月,才能看到 Java 11 的整体形态。

编译自:Looking Forward to Java in 2018


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部