转自:OSC开源社区(ID:oschina2013)

从 JDK 19 的概述页面来看,JDK 19 处于 Rampdown Phase Two 阶段,整个功能集已被冻结,将不再对 JEP 进行改动。

Java 19 只有 7 个新特性:

405: Record Patterns (Preview) 记录模式
422: Linux/RISC-V Port Linux/RISC-V 移植
424: Foreign Function & Memory API (Preview) 外部函数和内存 API 
425: Virtual Threads (Preview) 虚拟线程
426: Vector API (Fourth Incubator) 向量 API
427: Pattern Matching for switch (Third Preview) Switch 模式匹配
428: Structured Concurrency (Incubator) 结构化并发

下面对新特性作简短的介绍:

记录模式 (预览版)

使用 记录模式 增强 Java 编程语言以解构记录值,可以嵌套记录模式和类型模式,实现强大的、声明性的和可组合的数据导航和处理形式。

这是一个预览语言功能。

Linux/RISC-V 移植

将 JDK 移植到 Linux/RISC-V,目前仅支持 RISC-V 的 RV64GV 配置(包含向量指令的通用 64 位 ISA)。将来可能会考虑支持其他 RISC-V 配置,例如通用 32 位配置 (RV32G)。

外部函数和内存 API (预览版)

引入一个 API,Java 程序可以通过该 API 与 Java 运行时之外的代码和数据进行互操作。通过该 API 可有效地调用外部函数( JVM 之外的代码)和安全地访问外部内存(不受 JVM 管理的内存),使得 Java 程序能够调用本机库并处理本机数据,而不会出现 JNI 的脆弱性和危险。

这是个预览版 API 。

虚拟线程(预览版)

将虚拟线程引入 Java 平台。虚拟线程是轻量级线程,可显著地减少编写、维护和观察高吞吐量并发应用程序的工作量。

这是一个预览 API,我们 OSC 曾对此进行了详细介绍 。

Vector API (第四次孵化)

引入一个 API 来表达在运行时能够可靠编译的向量计算,在支持的 CPU 架构上优化向量指令,从而实现优于标量计算的性能。

Switch 模式匹配(第三预览版)

用 switch 表达式和语句的模式匹配,以及对模式语言的扩展来增强 Java 编程语言。将模式匹配扩展到 switch 中,允许针对一些模式测试表达式,这样就可以简明而安全地表达复杂的面向数据的查询。

该特性最早在 Java 17 中作为预览版出现, Java 19 为第三次预览。

结构化并发(孵化阶段)

引入用于结构化并发的 API 来简化多线程编程,结构化并发将不同线程中运行的多个任务视为单个工作单元,从而简化错误处理、提高可靠性并增强可观察性。

这是一个孵化阶段的 API。

另附 JDK 19 时间表:

2022/06/09

Rampdown Phase One Rampdown

第一阶段 (fork from main line)

2022/07/21

Rampdown Phase Two Rampdown

第二阶段

2022/08/11

Initial Release Candidate

初始候选版本(RC)

2022/08/25

Final Release Candidate

最终候选版本(RC)

2022/09/20

General Availability

稳定版本

其中 Rampdown 主要是修 Bug 和测试阶段。

还有一个有意思的事:从 Java 16 开始,每个版本的特性数量越来越少:

  • Java 16:17 个

  • Java 17:14 个

  • Java 18 :9 个

  • Java 19 :7 个

Java 20 不会变成 5 个吧...

相关链接:https://openjdk.org/projects/jdk/19/

加小编微信,回复 40 白嫖40套 java/spring/kafka/redis/netty 教程/代码/视频 等

扫二维码,加我微信,回复:40注意,不要乱回复
没错,不是机器人记得一定要等待,等待才有好东西

JDK 19 新特性,劲爆!相关推荐

  1. 一篇文带你了解JDK 13新特性,保姆级教程!!!

    JDK 13新特性介绍 1.1 JDK 各版本主要特性回顾 JDK Version 1.0 1996-01-23 Oak(橡树) 初代版本,伟大的一个里程碑,但是是纯解释运行,使用外挂JIT,性能比较 ...

  2. JDK 16 新特性,正式发布!程序员:追不上了...

    点击"开发者技术前线",选择"星标????" 让一部分开发者看到未来 地址:https://blog.csdn.net/csdnnews/article/det ...

  3. JDK 19 / Java 19 新特性

    JDK 19 预计今年 9 月发布,推出两个重要特性. 一个是 Vector API,另一个则是将 JDK 移植到 RISC-V.其中前者 Vector API 是一个表达向量计算的 API,JDK ...

  4. Java SE 笔记(扩展篇)JDK 9-17 新特性介绍

    Java新特性介绍 **注意:**推荐完成此路线所有前置内容后,再来学习本篇. 经过前面的学习,我们基本已经了解了Java 8及之前的所有语法,不过,Java 8是Oracle 公司于 2014 年 ...

  5. JDK 13 新特性一览

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:木九天 my.oschina.net/mdxlcj/blog ...

  6. 你需要了解的 C++ 17 Top 19 新特性(附精彩评论)

    什么是 C++17? C++17(或 C++1z)是继 C++14 之后 C++ 编程语言 ISO/IEC 标准的下一次修订的非正式名称.C++17 现在功能已齐全,正在成为国际标准的路上.它的规范已 ...

  7. 史上最全jdk版本新特性大全

    前言 在本文中,我将描述自第8版以来Java最重要且对开发人员友好的功能.为什么会有这样的主意?在Web上,您可以找到许多文章,其中包含每种Java版本的新功能列表.但是,由于缺少文章,因此无法简要概 ...

  8. JDK 8 新特性- 学习中

    目录 1. List Stream distinct() 去重 例子1 例子2 2 Streams filter() and collect() 3  Try后面跟括号 4  JDK8中有双冒号的用法 ...

  9. JDK 9-17 新特性介绍

    Java新特性介绍 Java 8是Oracle 公司于 2014 年 3 月 18 日发布的,距离今天已经过了近十年的时间了,但是由于Java 8的稳定和生态完善(目前仍是LTS长期维护版本),依然有 ...

最新文章

  1. 北京铁路局百余列普速列车将开通WiFi
  2. 面试题目集锦--二叉树
  3. PAT:1053. Path of Equal Weight (30) AC
  4. vSphere资源:下载及文档地址
  5. go---字符串截取
  6. 【Xamarin 挖墙脚系列:Xamarin SDK开源了................】
  7. 为什么EXE不能超过4GB
  8. sql判断null/空缺值
  9. jq上传file到php,jQuery文件上传
  10. 探索比特币源码7-哈希
  11. 终于有人把Docker讲清楚了
  12. VSCode配置jupyter逐行语句运行python
  13. Objective-C 与JAVA的SHA1/HmacSHA1加密算法实现
  14. opencv学习之------在算法设计中使用策略模式
  15. 天地图key的申请步骤
  16. Android 12.0 导航栏Icon图标大小修改
  17. 【thinkphp5操作redis系列教程】集合类型之sCard,sSize
  18. Unable to preventDefault inside passive event listener due to target being treated as passive 怎么办?
  19. JAVA 基础学习第一天
  20. 相关距离 matlab,你只有一个ArcGIS和Matlab的距离!

热门文章

  1. dev 服务器调试过程
  2. java编译后的扩展名,Java源程序的扩展名是( ),经过编译后的程序的扩展名是( )...
  3. markdown中编辑数学公式用到的技巧
  4. WebGL+Three.js 入门与实战、搞定前端前沿技术
  5. 基于Wi-Fi的室内定位在美团总部的实践和应用
  6. php 格式化银行卡,PHP 格式化数字返回银行卡号码
  7. ModuleNotFoundError: No module named sklearn
  8. PTX JIT compiler failed
  9. 一文深刻解析UWB是什么技术?
  10. FFT的C语言实现,对照MATLIB