走进 OCW | Oracle 正式发布 Java 21

2023年 9月 25日 52.8k 0

Project Loom 的功能

· JEP 444:Virtual Threads — 通过向 Java 平台引入轻量级虚拟线程,显著减少编写、维护和观察高吞吐量并发应用的工作量。虚拟线程让开发人员可以轻松使用现有的 JDK 工具和技术,对并发应用进行故障排除、调试、分析以及扩展,进而加快应用开发速度。

· JEP 446:Scoped Values(预览版)— 支持用户在线程内和跨线程共享不可变数据。这可提高开发项目的易用性全面性、可靠性和性能。

· JEP 453:Structured Concurrency(预览版)— 通过引入结构化并发的 API 来简化并发编程,有助于推广并发编程风格,消除取消和关闭所带来的常见风险(例如线程泄漏和取消延迟),并提高并发代码的可观测性。这可帮助开发人员简化错误处理和取消工作,并提高可靠性和可观测性。

性能更新

· JEP 439:Generational ZGC — 扩展 Z Garbage Collector (ZGC) 来区分新旧对象的层代,以提高应用性能。Generational ZGC 可以减少应用所需的堆内存和垃圾收集 CPU 的间接费用,并降低分配停滞的风险,有助于提高开发人员的工作效率。

语言更新和改进

· JEP 430:String Templates(预览版)— 通过使包含运行时计算值的字符串更容易表达,简化 Java 程序的开发工作,并提高将用户提供的值编写成字符串,并将字符串传递给其他系统的程序的安全性。此外,该特性还可增强参杂了表达式和文本的表达式的可读性,创建通过文字文本和嵌入表达式计算的非字符串值,而无需通过中间字符串表示形式传递。通过提高 Java 语言的可读性、可写性和可维护性,开发人员的工作效率也将随之提升。

· JEP 440:Record Patterns(第三预览版)— 扩展模式匹配以解构记录类的实例,并支持添加嵌套模式,以此增强 Java 语言。这有助于开发人员扩展模式匹配,以实现更复杂和可定制的数据查询,从而提高工作效率。

· JEP 441:Pattern Matching for Switch — 支持在案例标签中显示模式,进而增强 switch 表达式和语句的表达性和适用性。此外,要求模式 switch 语句包含所有可能的输入值,以提高 switch 语句的安全性;确保所有现有的 switch 表达式和语句都可以继续编译而不进行任何更改,并使用相同的语义执行。这将使 Java 语言更加语义化,以简洁、安全的方式表达面向数据的复杂查询,有助于开发人员简化项目并提高项目的可靠性。

· JEP 443:Unnamed Patterns and Variables(第三预览版)— 启用未命名模式,无需设置组件的名称或类型即可匹配记录组件,并支持可初始化但未被使用的未命名变量,以此增强 Java 语言。这有助于提高记录模式的可读性以及所有代码的可维护性,进而简化开发过程。

· JEP 445:Unnamed Classes and Instance Main Methods(预览版)— 简化并提高 Java 语言的可访问性,让教育工作者可以循序渐进地讲解编程的概念。避免向初学者介绍不同的 Java 方言和工具链,并使用支持任何 Java 程序的工具来整合和运行学生程序,进而帮助学生以简洁的方式编写基础程序,并随着技能的提升,写出更好的代码。学生开发人员无需了解为大型程序设计的语言功能,即可编写他们的第一个程序,提高了工作效率。

Project Panama 预览版特性

· JEP 442:Foreign Function & Memory API(第三预览版)— 新推出的 API 使 Java 程序更容易与 Java 运行时之外的代码和数据进行互操作。通过有效调用外部函数(即 Java Virtual Machine [JVM] 之外的代码),以及安全地访问外部内存(即不受 JVM 管理的内存),这个新的 API 支持 Java 程序在无需 Java Native Interface 的情况下调用本地库和处理原生数据,从而为开发人员提高了易用性、灵活性、性能和安全性。

· JEP 448:Vector API (六次孵化阶段)— 新推出的 API 允许以一种在运行时,可靠地编译为支持的 CPU 架构上的向量指令方式表达向量计算,为开发人员提供能够清晰和简洁地表达各种矢量计算的 API,进而提高项目性能。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论