Java 17的新特性

9e01563e24c94a9a892d97586ee290d3.jpgJava 17引入了多项新特性,以下是一些重要的更新:

 

增强的伪随机数生成器(JEP 356)

Java 17为伪随机数生成器(PRNG)提供了新的接口类型和实现,包括可跳转的PRNG和另一类可拆分的PRNG算法(LXM)。这些新的PRNG算法使得开发者更容易在应用程序中互换使用各种PRNG算法。

删除弃用的Applet API(JEP 398)

Java 17中,Applet API被彻底删除。Applet API曾用于编写在Web浏览器端运行的Java小程序,但由于安全和实用性的原因,它已经被废弃多年。

switch表达式增强(JEP 406)

Java 17对switch表达式进行了增强,包括对switch表达式的模式匹配进行了优化。这些改进可以让开发者更方便地使用switch表达式来进行条件判断和分支控制。

密封类(Sealed Classes)(JEP 409)

密封类允许开发者限制一个类的继承范围或一个接口的实现范围,确保它只能被指定的子类继承或指定的类实现。这有助于提高代码的安全性和可控性。

删除实验性的AOT和JIT编译器(JEP 410)

Java 17删除了实验性的Ahead-Of-Time (AOT) 和Just-In-Time (JIT) 编译器,因为这些编译器自推出以来很少使用,维护它们所需的工作量很大。

删除弃用的安全管理器(JEP 411)

Java 17弃用了安全管理器,以便在未来的版本中删除。安全管理器曾经是保护客户端Java代码的主要方法,但随着时间的推移,它的作用越来越小。

外部函数和内存API(JEP 412)

Java 17引入了对外部函数和内存API的支持,这允许Java程序与Java运行时之外的代码和数据进行互操作,提高了Java程序的灵活性和效率。

向量(Vector)API(JEP 414)

向量API提供了一个API的初始迭代以表达一些向量计算,这些计算在运行时可靠地编译为支持的CPU架构上的最佳向量硬件指令,从而获得优于同等标量计算的性能。

以上是Java 17的一些主要新特性,还有其他一些改进和优化,以提升Java编程的开发体验和性能。

 

参考:

[1]:https://javaguide.cn/java/new-features/java17.html

[2]:https://blog.csdn.net/xy520521/article/details/139280196

[3]:https://blog.csdn.net/weixin_42201180/article/details/133957082

[4]:https://www.cnblogs.com/zhrb/p/18246475

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/354308.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】 第1章 概述

一、概念 1.机器学习是一种通过先验信息来提升模型能力的方式。 即从数据中产生“模型”( model )的算法,然后对新的数据集进行预测。 2.数据集(Dataset):所有数据的集合称为数据集。 训练集:用来训练出一个适合模…

基于GIS、RS、VORS模型、CCDM模型、geodetecto、GWR模型集成的生态系统健康的耦合协调分析

如何集成多源数据,依托ArcGIS Pro和R语言环境,采用“活力-组织力-恢复力-贡献力”(VORS)模型定量测算生态系统健康指数(EHI);如何从经济城镇化(GDPD)、人口城镇化&#x…

Antd - 上传图片 裁剪图片

目录 本地上传方法【input type"file"】:upload组件【antd】默认接口上传:自定义接口上传:【取消默认上传接口】antd的upload组件beforeUpload还有个比较坑的地方 upload结合裁剪1、antd官方裁剪组件:![在这里插入图片描…

如何通过自己编写Jmeter函数

在Jmeter的函数助手里,有很多内置的函数,比如Random、UUID、time等等。使用这些函数可以快速帮我们生成某些数据,进行一些逻辑处理。用起来非常的方便。 但是在实际接口测试过程中,有很多的需求,Jmeter内置的函数可能…

easyexcel和poi版本冲突报错深入解析v2

easyexcel报错解决 问题 项目由poi改用easyexcel,报错如下: java.lang.NoSuchMethodError: ‘org.apache.poi.ss.usermodel.CellType org.apache.poi.ss.usermodel.Cell.getCellType()’ 原因 easyexcel中的poi和项目原本的poi版本冲突问题。 由于之前做…

移植案例与原理 - HDF驱动框架-驱动配置(2)

1.2.7 节点复制 节点复制可以实现在节点定义时从另一个节点先复制内容,用于定义内容相似的节点。语法如下,表示在定义"node"节点时将另一个节点"source_node"的属性复制过来。 node : source_node示例如下,编译后bar节点…

一文详解扩散模型

文章目录 1、常见的生成模型2、变分推断简介3、文生图的评价指标4、Diffusion Models5、其他技术交流群精选 节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学。 针对算法岗技术趋势、大模型落地…

网络校时服务器:铁路对时有妙招

在信息高速发展的今天,铁路作为国家的经济大动脉,与广大市民生活息息相关,担负着运送大流量乘客、保证交通畅通的重任,为了保证列车的正点运行和乘客的行程,对时间精准度的要求是非常严格的。随着我国铁路的发展速度和…

[AIGC] python遍历以及字符串的切片

以下是一篇关于Python遍历方法和字符串切片的文章,以及一个在LeetCode中的问题进行解释。文章最后会给出解题思路和代码实现。 Python遍历方法与字符串切片入门教程 在Python语言中,我们包含了许多内置的函数和方法令其适合于各种数据处理任务。在这个…

初始化三板斧 - centos7

1、关闭防火墙、关闭SELinux ① 立即关闭防火墙 systemctl stop firewalld ② 设置开机关闭防火墙 systemctl disable firewalld ③ 立即关闭SELinxu setenforce 0 ④ 设置开机关闭SELinux 将SELINUXenforcing 修改替换为 SELINUXdisabled vim /etc/selinux/config se…

java程序监控linux服务器硬件,cpu、mem、disk等

实现 使用Oshi和Hutool工具包1、pom依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.github.oshi</groupId>&l…

【Oracle篇】rman时间点异机恢复:从RAC环境到单机测试环境的转移(第六篇,总共八篇)

&#x1f4ab;《博主介绍》&#xff1a;✨又是一天没白过&#xff0c;我是奈斯&#xff0c;DBA一名✨ &#x1f4ab;《擅长领域》&#xff1a;✌️擅长Oracle、MySQL、SQLserver、阿里云AnalyticDB for MySQL(分布式数据仓库)、Linux&#xff0c;也在扩展大数据方向的知识面✌️…

龙芯LS2K0300久久派上手体验

介绍 芯片 龙芯2K0300芯片是一款基于LA264处理器核的多功能SoC芯片&#xff0c;可广泛适用于工业控制、通信设备、信息家电和物联网等领域&#xff1b;该芯片采用高集成度设计&#xff0c;可提供丰富的功能接口&#xff0c;满足多场景应用需求&#xff0c;同时支持低功耗技术…

AMBA-CHI协议详解(四)

《AMBA 5 CHI Architecture Specification》 AMBA-CHI协议详解&#xff08;一&#xff09; AMBA-CHI协议详解&#xff08;二&#xff09; AMBA-CHI协议详解&#xff08;三&#xff09; AMBA-CHI协议详解&#xff08;四&#xff09; 文章目录 2.3.3 Atomic transactions2.3.4 S…

【IPython的使用技巧】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

Java 读取Excel导入数据库,形成树状结构

最近开发过程中遇到一个Excel的导入的功能&#xff0c;因为导入的数据结构具有层次结构&#xff0c;经过一番研究&#xff0c;最终得以实现&#xff0c;所有写下该文章&#xff0c;记录过程&#xff0c;供以后参考。 下图是导入Excel的数据结构&#xff1a; 使用POI解析Excel&…

被拷打已老实!面试官问我 #{} 和 ${} 的区别是什么?

引言&#xff1a;在使用 MyBatis 进行数据库操作时&#xff0c;#{} 和 ${} 的区别是面试中常见的问题&#xff0c;对理解如何在 MyBatis 中安全有效地处理 SQL 语句至关重要。正确使用这两种占位符不仅影响应用的安全性&#xff0c;还涉及到性能优化。 题目 被拷打已老实&…

浅谈RC4

一、什么叫RC4&#xff1f;优点和缺点 RC4是对称密码&#xff08;加密解密使用同一个密钥&#xff09;算法中的流密码&#xff08;一个字节一个字节的进行加密&#xff09;加密算法。 优点&#xff1a;简单、灵活、作用范围广&#xff0c;速度快 缺点&#xff1a;安全性能较差&…

操作系统真象还原:输入输出系统

第10章-输入输出系统 这是一个网站有所有小节的代码实现&#xff0c;同时也包含了Bochs等文件 10.1 同步机制–锁 10.1.1 排查GP异常&#xff0c;理解原子操作 线程调度工作的核心内容就是线程的上下文保护&#xff0b;上下文恢复 。 根本原因是访问公共资源需要多个操作&…

超级数据查看器 教程pdf 1-31集 百度网盘

百度网盘链接 提取码1234https://pan.baidu.com/s/1s_2lbwZ2_Su83vDElv76ag?pwd1234 通过百度网盘分享的文件&#xff1a;超级数据查看器 … 链接:https://pan.baidu.com/s/1s_2lbwZ2_Su83vDElv76ag?pwd1234 提取码:1234 复制这段内容打开「百度网盘APP 即可获取」