JDK 19 新特性,劲爆!
转自: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 新特性,劲爆!相关推荐
- 一篇文带你了解JDK 13新特性,保姆级教程!!!
JDK 13新特性介绍 1.1 JDK 各版本主要特性回顾 JDK Version 1.0 1996-01-23 Oak(橡树) 初代版本,伟大的一个里程碑,但是是纯解释运行,使用外挂JIT,性能比较 ...
- JDK 16 新特性,正式发布!程序员:追不上了...
点击"开发者技术前线",选择"星标????" 让一部分开发者看到未来 地址:https://blog.csdn.net/csdnnews/article/det ...
- JDK 19 / Java 19 新特性
JDK 19 预计今年 9 月发布,推出两个重要特性. 一个是 Vector API,另一个则是将 JDK 移植到 RISC-V.其中前者 Vector API 是一个表达向量计算的 API,JDK ...
- Java SE 笔记(扩展篇)JDK 9-17 新特性介绍
Java新特性介绍 **注意:**推荐完成此路线所有前置内容后,再来学习本篇. 经过前面的学习,我们基本已经了解了Java 8及之前的所有语法,不过,Java 8是Oracle 公司于 2014 年 ...
- JDK 13 新特性一览
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:木九天 my.oschina.net/mdxlcj/blog ...
- 你需要了解的 C++ 17 Top 19 新特性(附精彩评论)
什么是 C++17? C++17(或 C++1z)是继 C++14 之后 C++ 编程语言 ISO/IEC 标准的下一次修订的非正式名称.C++17 现在功能已齐全,正在成为国际标准的路上.它的规范已 ...
- 史上最全jdk版本新特性大全
前言 在本文中,我将描述自第8版以来Java最重要且对开发人员友好的功能.为什么会有这样的主意?在Web上,您可以找到许多文章,其中包含每种Java版本的新功能列表.但是,由于缺少文章,因此无法简要概 ...
- JDK 8 新特性- 学习中
目录 1. List Stream distinct() 去重 例子1 例子2 2 Streams filter() and collect() 3 Try后面跟括号 4 JDK8中有双冒号的用法 ...
- JDK 9-17 新特性介绍
Java新特性介绍 Java 8是Oracle 公司于 2014 年 3 月 18 日发布的,距离今天已经过了近十年的时间了,但是由于Java 8的稳定和生态完善(目前仍是LTS长期维护版本),依然有 ...
最新文章
- 北京铁路局百余列普速列车将开通WiFi
- 面试题目集锦--二叉树
- PAT:1053. Path of Equal Weight (30) AC
- vSphere资源:下载及文档地址
- go---字符串截取
- 【Xamarin 挖墙脚系列:Xamarin SDK开源了................】
- 为什么EXE不能超过4GB
- sql判断null/空缺值
- jq上传file到php,jQuery文件上传
- 探索比特币源码7-哈希
- 终于有人把Docker讲清楚了
- VSCode配置jupyter逐行语句运行python
- Objective-C 与JAVA的SHA1/HmacSHA1加密算法实现
- opencv学习之------在算法设计中使用策略模式
- 天地图key的申请步骤
- Android 12.0 导航栏Icon图标大小修改
- 【thinkphp5操作redis系列教程】集合类型之sCard,sSize
- Unable to preventDefault inside passive event listener due to target being treated as passive 怎么办?
- JAVA 基础学习第一天
- 相关距离 matlab,你只有一个ArcGIS和Matlab的距离!
热门文章
- dev 服务器调试过程
- java编译后的扩展名,Java源程序的扩展名是( ),经过编译后的程序的扩展名是( )...
- markdown中编辑数学公式用到的技巧
- WebGL+Three.js 入门与实战、搞定前端前沿技术
- 基于Wi-Fi的室内定位在美团总部的实践和应用
- php 格式化银行卡,PHP 格式化数字返回银行卡号码
- ModuleNotFoundError: No module named sklearn
- PTX JIT compiler failed
- 一文深刻解析UWB是什么技术?
- FFT的C语言实现,对照MATLIB