👁 关注微信公众号:非典型理科男 回复:jdk14获取全部关于JDK14新特性的文章。算法
2020年3月17日,JDK14正式发布。express
JDK14将在4月和7月收到安全更新,而后由9月到期的非LTS版本的JDK 15取代。JDK14包括16项新功能,例如JDK Flight Recorder事件流,模式匹配和开关表达式等特征。 macos
从JDK9以后,Oracle采用了新的发布周期:每6个月发布一个版本,每3年发布一个LTS版本。JDK14是继JDK9以后发布的第四个版本, 该版本为非LTS版本,最新的LTS版本为JDK11。windows
JDK14包含了比JDK12和JDK13加在一块儿还多的特性。共包括16项的新特性。api
包括7项新特性,其中3项为正式特性,7项为非正式特性。安全
Switch Expressions 在 JDK 12 与 13 中都是预览状态,如今在 JDK 14 中已成为稳定特性。switch 表达式扩展了 switch 语句,使其不只能够做为语句(statement),还能够做为表达式(expression),而且两种写法均可以使用传统的 switch 语法,或者使用简化的“case L ->”模式匹配语法做用于不一样范围并控制执行流。这些更改将简化平常编码工做,并为 switch 中的模式匹配作好准备微信
改进 NullPointerExceptions,经过准确描述哪些变量为 null 来提升 JVM 生成的异常的可用性。该提案的做者但愿为开发人员和支持人员提供有关程序为什么异常终止的有用信息,并经过更清楚地将动态异常与静态程序代码相关联来提升对程序的理解。架构
非易失性映射的字节缓冲将添加新的 JDK 特定文件映射模式,该模式容许 FileChannel API 用于建立引用非易失性内存(NVM)的 MappedByteBuffer 实例。并发
Records 提供了一种紧凑的语法来声明类,以帮助开发者写出更简洁的代码,这些类是浅层不可变数据(shallowly immutable data)的透明拥有者。该特性主要用在特定领域的类,这些类主要用于保存数据,不提供领域行为。app
经过模式匹配,开发者能够用更简洁和更安全的方式来表达通用的程序逻辑。instanceof 运算符的模式匹配支持从对象中按条件来提取组件,此语言特性目前处于预览阶段。
文本块特性(Text Blocks)与常见的 Python"""any input"""特性同样,它支持多行字符串文字,能够不须要使用大多数转义序列,并以一种可预测的方式自动设置字符串格式,同时可让开发人员控制格式。虽然这不是特别复杂的特性,但对于开发中想将 HTML 代码引入 Java 来讲是极大的便利,代码可读性也极大提升。目前处于第二个预览阶段。
新增一个 API 以容许 Java 程序安全有效地访问 Java 堆以外的外部内存。
共包括6项新特性,修改均为正式状态。
经过实现 NUMA-aware 内存分配,提高 G1 在大型机器上的性能。
暴露 JDK Flight Recorder 数据以进行连续监视。
将 ZGC 垃圾回收器移植到 macOS和Windows平台。
共包括2个新特性。
共包括1个项子新特性。处于孵化状态。
建立一个用于打包独立 Java 应用程序的工具。
所有新特性以下:
305: instanceof的模式匹配(预览)
343: 包装工具(培养箱)
345: G1的NUMA感知内存分配
349: JFR事件流
352: 非易失性映射字节缓冲区
358: 有用的NullPointerExceptions
359: 记录(预览)
361: 开关表达式(标准)
362: 弃用Solaris和SPARC端口
363: 删除并发标记扫描(CMS)垃圾收集器
364: Mac OS上的ZGC你像
365: Windows上的ZGC
366: 弃用ParallelScavenge + SerialOld GC组合
367: 删除Pack200工具和API
368: 文本块(第二预览)
370: 外部存储器访问API(孵化器)
回复“资料”,免费获取 一份独家呕心整理的技术资料!
回复“资料”,免费获取 一份独家呕心整理的技术资料!