详情介绍
Java 19 是 Java SE 平台的最新版本。 根据 Oracle 免费条款和条件许可,JDK 二进制文件可在生产中免费使用,并可免费重新分发。JDK 是使用 Java 编程语言构建应用程序和组件的开发环境。JDK 包括用于开发和测试用 Java 编程语言编写并在 Java 平台上运行的程序的工具。
Java19(JDK19)于今年9月正式发布,现已功能完善,同时增加了一些新的功能。包括结构化并发、记录模式、外部函数和内存 API 的预览,以及对开源 Linux/RISC-V 指令集架构 (ISA) 的支持等。
Java 19变化包括:
- Linux RISC-V端口现在可用。
- 外来函数和内存API在OpenJDK 19中以预览形式出现。该API允许与Java运行时之外的代码和数据进行互操作,例如,Java程序可以调用本地库和处理本地数据。
- 虚拟线程是以预览形式出现的,作为并发应用的轻量级线程实现。
- 处于第四孵化阶段的用于矢量计算的Java Vector API,在运行时利用了基于CPU架构支持的最佳矢量指令。
- 结构化并发处于孵化阶段,用于简化Java多线程。
- 记录模式正在预览中,用于解构记录值。
- 新的API,允许为单个TLS和DTLS连接定制签名方案。
- 支持Unicode 14。
- 增加了额外的日期-时间格式。
亮点更新
Java 19 的七大亮点更新
根据官方发布的公告显示,Java 19 版本带来了七大主要功能更新,包括结构化并发、记录模式、外部函数和内存 API 的预览,以及对开源的 Linux/RISC-V 指令集架构(ISA)的支持。除了 Linux/RISC-V 功能,所有的功能都处于预览或孵化阶段。
具体来看:
结构化并发。当前还处于孵化阶段,旨在通过结构化并发 API 简化多线程编程。这种并发性将不同线程中运行的多个任务视为单个工作单元,从而简化错误处理、提高可靠性和可观察性。这个功能来自 Project Loom,它引入了一个新的轻量级并发模型。
记录模式,这一功能目前也处于预览版,主要是用来解构记录值。记录模式和类型模式可以被嵌套,以实现强大的、具有声明性的和可组合的数据导航和处理形式。该提案的目标包括扩展模式匹配,用以表达更复杂的、可组合的数据查询,同时不改变类型模式的语法或语义。该提案建立在 2021 年 3 月在 JDK 16 中交付的模式匹配的基础上。未来,Oracle 可能会要求对记录模式进行扩展,使之具备数组模式、Vararg 模式。记录模式是 Project Amber 的一部分,该项目旨在探索和孵化较小的、面向生产力的 Java 功能。
外部函数和内存 API 的预览版。通过引入一个 API,Java 程序可以与 Java 运行时之外的代码和数据进行互操作。通过有效地调用外部函数(即 JVM 之外的代码)和安全地访问外部内存(即不由 JVM 管理的内存),该 API 使 Java 程序能够调用本地库并处理本机数据,而不会出现 Java 本地接口(JNI)的危险和脆弱。外部函数和内存 API 结合了两个早期的孵化 API:外部内存访问 API 和外部链接器 API。外部函数和内存 API 曾在 JDK 17 中孵化,而后在 JDK 18 中重新孵化。该提案的目标包括易用性、性能、通用性和安全性。
虚拟线程的预览版。这是一种轻量级的线程,大大减少了编写、维护和观察高吞吐量并发应用的工作量。可以以简单的 thread-per-request 风格编写的服务器应用程序能够以接近最佳的硬件利用率进行扩展,通过使用 java.lang Thread API 现有代码能够以最小的改动采用虚拟线程,并基于现有的 JDK 工具对虚拟线程进行故障诊断、调试和分析。本提案的目标不是要改变 Java 的基本并发模型,也不是要在 Java 语言或 Java 库中提供新的数据并行结构。它的目标也不是去除线程的传统实现,或默默地将现有的应用程序迁移到使用虚拟线程。这项功能也是 Project Loom 的一部分。
对 switch 表达式和语句的模式匹配进行了第三次预览。这项功能以前在 JDK 17、JDK 18 中进行过预览。这一次在 JDK 19 中将进一步细化功能,包括用 switch 块中的 when 子句替换受保护的模式。另外,当选择器表达式的值为 null 时,模式切换的运行时语义与传统的语义更加一致。这项功能也是 Amber 项目的一部分。
Vector API 的第四次孵化,将表达向量计算,在运行时可靠地编译为支持的 CPU 架构上的最佳向量指令,从而实现优于等效标量计算的性能。该 API 的开发者使用 HotSpot 自动矢量器,可获得了一种在 Java 中编写复杂的向量算法的方法,但有一个用户模型,使向量化更可预测和稳健。Vector API 先前已被纳入 JDK 16、JDK 17 和 JDK 19。在最新的 JDK 19 中,官方为该功能增加了两个跨道向量操作,即压缩和扩展,以及一个互补的向量掩码压缩操作。压缩向量操作将由掩码选择的源向量的通道按通道顺序映射到目标向量,而扩展操作则做相反的操作。压缩操作在过滤查询结果时非常有用。
通过 Linux/RISC-V 移植,目前这一功能已正式可用。Java 将获得对硬件指令集的支持,该指令集已经被广泛的语言工具链所支持。RISC-V 实际上是一系列相关的 ISA。Linux/RISC-V 端口将只支持 RISC-V 的 RV64GV 配置,这是一个包括矢量指令的通用 64 位 ISA。Java 的开发者可能会在将来考虑其他 RISC-V 的配置。
下载地址
人气软件
Fish Shell Mac版 for Mac V3.1.2 苹果电脑版
Java SE Development Kit(JDK) 21 LTS for Mac v21.0.3 官方正式
IntelliJ IDEA 社区版 2024.3 Mac中文正式免费版(附安装教程)
Myeclipse for Mac V2014 苹果电脑版(附破解工具及破解教程)
Navicat for MySQL 11 for Mac V11.2.18 苹果电脑版
Mathematica for Mac 11.3 中文特别版(附注册机+激活方法)
JDK11(Java SE Development Kit 11) for Mac v11.0.25 x64 官方
SvnX(SVN客户端软件) for Mac V1.3 苹果电脑版
Jetbrains Clion、PyCharm、WebStorm、PhpStorm等万能破解注册机
Mathematica 12 for Mac 12.3.0 中/英文正式破解版(附注册机+激
相关文章
- Navicat for SQL Server for Mac v17.1.6 苹果电脑版
Navicat for MySQL mac中文版是一款功能强大、使用简单的数据库管理开发工具,对于数据需要大的用户来说非常实用,界面体验好,能使用函数快速得出各种数据,是做报表的得...
- 游戏引擎开发工具Unity 6 v600.0.28f1 LTS for Mac 官方稳定正式版 x64
unity6是一款非常好用的游戏引擎开发工具,可制作出游戏的各种动态画面,改进了粒子系统和GPU Instancing等功能,这里提供Unity6 Mac下载...
- Java SE Development Kit(JDK) 23 for Mac v23.0.1 官方最新正式版
Java 23 / JDK 23 已正式发布,新版包含了一系列重要的新特性和改进,使 Java 开发者能够在性能、可读性和并发处理等方面获得更好的体验...
- 腾讯UGit for Mac v5.22.2 苹果电脑版
腾讯UGit优化Git功能,提升代码管理效率,注重代码安全,支持团队协作,提供加密存储和传输,促进多人开发时权限分配和代码审查,提升团队效率和质量...
- 反汇编工具IDA Pro v9.0.240925 Mac官方完整免费版(Inter/Apple Silicon)
IDA Pro 是一款交互式反汇编器,广泛用于逆向工程,它极其灵活,内置命令语言,支持多种可执行文件格式,目前Hexrays为了充分调动大家主观能动性, 主动公开了测试版的完整I...
- Redis可视化管理工具 Redis Insight v2.60 for Mac 官方免费安装版
RedisInsight是一款Redis官方出品的可视化管理工具,可用于设计、开发、优化你的Redis应用,支持String、Hash、Set、List、JSON等多种数据类型的管理,支持远程使用CLI功能...
下载声明
☉ 解压密码:www.jb51.net 就是本站主域名,希望大家看清楚,[ 分享码的获取方法 ]可以参考这篇文章
☉ 推荐使用 [ 迅雷 ] 下载,使用 [ WinRAR v5 ] 以上版本解压本站软件。
☉ 如果这个软件总是不能下载的请在评论中留言,我们会尽快修复,谢谢!
☉ 下载本站资源,如果服务器暂不能下载请过一段时间重试!或者多试试几个下载地址
☉ 如果遇到什么问题,请评论留言,我们定会解决问题,谢谢大家支持!
☉ 本站提供的一些商业软件是供学习研究之用,如用于商业用途,请购买正版。
☉ 本站提供的JDK19(Java SE Development Kit 19) 19.0.2 MAC 官方苹果电脑版 64位资源来源互联网,版权归该下载资源的合法拥有者所有。