JDK/Java 14 发布

oschina
 oschina
发布于 2020年03月18日
收藏 27

3 月 17 日,JDK/Java 14 正式 GA

此版本包含的 JEP(Java/JDK Enhancement Proposals,JDK 增强提案)比 Java 12 和 13 加起来的还要多。总共 16 个新特性如下:

305:Pattern Matching for instanceof (Preview)
为 instanceof 运算符引入模式匹配(预览阶段)

通过模式匹配,开发者可以用更简洁和更安全的方式来表达通用的程序逻辑。instanceof 运算符的模式匹配支持从对象中按条件来提取组件,此语言特性目前处于预览阶段。

343:Packaging Tool (Incubator)
打包工具(孵化阶段)

创建一个用于打包独立 Java 应用程序的工具。

345:NUMA-Aware Memory Allocation for G1
针对 G1 的 NUMA-Aware 内存分配

通过实现 NUMA-aware 内存分配,提升 G1 在大型机器上的性能。

349:JFR Event Streaming
JFR 事件流

暴露 JDK Flight Recorder 数据以进行连续监视。

352:Non-Volatile Mapped Byte Buffers
非易失性映射的字节缓冲

非易失性映射的字节缓冲将添加新的 JDK 特定文件映射模式,该模式允许 FileChannel API 用于创建引用非易失性内存(NVM)的 MappedByteBuffer 实例。

358:Helpful NullPointerExceptions

改进 NullPointerExceptions,通过准确描述哪些变量为 null 来提高 JVM 生成的异常的可用性。该提案的作者希望为开发人员和支持人员提供有关程序为何异常终止的有用信息,并通过更清楚地将动态异常与静态程序代码相关联来提高对程序的理解。

359:Records (Preview)

Records 提供了一种紧凑的语法来声明类,以帮助开发者写出更简洁的代码,这些类是浅层不可变数据(shallowly immutable data)的透明拥有者。该特性主要用在特定领域的类,这些类主要用于保存数据,不提供领域行为。

361:Switch Expressions (Standard)

Switch Expressions 在 JDK 12 与 13 中都是预览状态,现在在 JDK 14 中已成为稳定特性。switch 表达式扩展了 switch 语句,使其不仅可以作为语句(statement),还可以作为表达式(expression),并且两种写法都可以使用传统的 switch 语法,或者使用简化的“case L ->”模式匹配语法作用于不同范围并控制执行流。这些更改将简化日常编码工作,并为 switch 中的模式匹配做好准备。

362:Deprecate the Solaris and SPARC Ports
弃用 Solaris 和 SPARC 端口

弃用 Solaris/SPARC, Solaris/x64 和 Linux/SPARC 端口,以便在未来的版本进行移除。

363:Remove the Concurrent Mark Sweep (CMS) Garbage Collector

移除 CMS(Concurrent Mark-Sweep) 垃圾回收器。

364:ZGC on macOS

将 ZGC 垃圾回收器移植到 macOS。

365:ZGC on Windows

将 ZGC 垃圾回收器移植到 Windows。

366:Deprecate the ParallelScavenge + SerialOld GC Combination

弃用 ParallelScavenge + SerialOld GC 的垃圾回收算法组合。

367:Remove the Pack200 Tools and API
移除 Pack200 工具和 API

删除 java.util.jar 包中的 pack200 和 unpack200 工具以及 Pack200 API。

368:Text Blocks (Second Preview)

文本块特性(Text Blocks)与常见的 Python"""any input"""特性一样,它支持多行字符串文字,可以不需要使用大多数转义序列,并以一种可预测的方式自动设置字符串格式,同时可以让开发人员控制格式。虽然这不是特别复杂的特性,但对于开发中想将 HTML 代码引入 Java 来说是极大的便利,代码可读性也极大提高。目前处于第二个预览阶段。

370:Foreign-Memory Access API (Incubator)
外部内存访问 API(孵化阶段)

新增一个 API 以允许 Java 程序安全有效地访问 Java 堆之外的外部内存。

详情查看:http://openjdk.java.net/projects/jdk/14/
可用于生产环境的二进制包下载:http://jdk.java.net/14/

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:JDK/Java 14 发布
加载中

精彩评论

y
yanling112
做了一个JDK的镜像分发站。https://www.injdk.cn,兄弟们,来干光我的CDN吧。
陈钇蒙
问题就是未知的才恐怖
码农小胖哥
码农小胖哥
还在用8
撒拉嘿
撒拉嘿
Javaer 真搞笑,大清都亡了,还死抱着java老版本
y
yanling112
我仔细研究过他们协议。不做改动的分发没事。

最新评论(137

郑泽鹏
郑泽鹏
资源耗用那么大,云原生时代根本就行不通
ccor
ccor
不知道今生还有没有机会用,6到中年,8到死…… 😷
谭佳庆
谭佳庆
为什么现在 还有这么多人 使用 jdk1.8? 而不使用新一点的版本?
onewedone
onewedone
这么发布 感觉Java要完了
insights
insights
8以上就不关注了,收费了还关注什么。。免费的用到死
Tinian
Tinian
假的Java程序员吧
blacksiders
blacksiders
世界上有个东西叫 openjdk
春华_秋实何在
春华_秋实何在
真 不喜欢 Java,莫名的 厌恶。
厉害吧24中
厉害吧24中
等前台兄弟们都换14了,中台再考虑吧。。
zbsszhao
zbsszhao
等协程
也许____
也许____
飞一般的感觉,谢谢大佬
坐定定
坐定定
springboot 能用jdk14吗
_vince
_vince
不行.2.1只能用1.8,jdk13都永不了..除非升级到2.2,坑已踩
Ayuru
Ayuru
凌晨发布的Spring Boot 2.2.6就是为了支持14
返回顶部
顶部