百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

Java 22 发布,新特性一览 java17新特性

yuyutoo 2024-10-23 16:40 13 浏览 0 评论

Java 22 发布于 2024 年 3 月 19 号。目前已经可以下载到不同供应商的构建版本了。推荐使用 Eclipse Temurin 的版本。


这个最新的 Java 版本有哪些新东西呢?我们来看一下。

首先介绍 Java 22 全新的功能。

第一个是 Class File API。这是解析、生成和转换 Java 类文件的标准 API。目前在处理 Java 的字节码时,必须用到第三方库,比如 ASM、BECL 或 Javassist。这些第三方库最大的问题是更新不够及时,无法适应 Java 现在 6个月一个版本的发布频率。Class File API 的出现,解决了更新不及时的问题。作为 Java 标准库的一部分,使用起来更方便,也更安全。

第二个是在构造器的 super(...) 和 this(...) 之前添加语句。我们在学习 Java的 时候,都会记得有一条语法规则:如果构造器使用了 super(...) 调用父类的构造器,或是 this(...) 调用当前类的其他构造器,调用的语句必须是构造器的第一条,否则就会出现编译错误。这是从 Java 1.0 就有的限制。这种限制是为了确保父类的字段先完成初始化。这种简单粗暴的一刀切的做法,虽然保证了安全性,但是带来了很多使用上的不变。在 Java 22 中,这个限制被去掉了。构造器的 super(...) 和 this(...) 之前可以添加语句,编译器会执行严格的检查,确保添加了语句之后,并不会破坏安全性。

第三个是流收集器。Java 8 推出的 Stream 在代码中的使用频率非常高。流的处理 pipeline 由 3个部分组成,分别是源,中间操作和终结操作。源是流中元素的来源,中间操作对元素进行处理,终结操作产生最后的结果或者是副作用。

一直以来,流处理的中间操作是不能自定义的,只能用 Stream 类中定义的那些。流收集器 Gatherer 接口的出现,使得我们可以创建自定义的流中间处理操作。比如我写的这个 Gatherer 的实现 DistinctBy,可以根据对象的属性值来去重。

第四个是 java 命令直接运行包含多个源代码文件的程序。在 Java 11 的时候,java 命令就可以运行单个 Java 源文件了。Java 22 把这个功能进行了增强,Java 程序中包含多个源文件时,也可以直接用 java 命令运行,并不需要先使用 javac 编译。

第五个与垃圾回收器 G1 有关,在 G1 中实现了区域锁定来降低延迟,在进入 JNI 临界区时不需要禁用 GC。

除了这5个新增的功能之外,有两个功能成为了正式功能。

未命名变量和模式,可以用下划线来指代未使用的变量,未使用的模式变量,和未使用的嵌套模式。

外部方法和内存API,这个API 是JNI的替代,可以高效地调用 JVM 之外的外部方法,安全访问 JVM 之外的外部内存。

最后是几个继续预览的功能:

字符串模板,允许在文本中嵌入表达式。

隐式声明的类和实例 main 方法,这个功能简化了Java入口类的写法,最简单的 Hello World 程序可以这样写。

结构化并发 Scoped Values 都是 Loom 项目的一部分,就是那个引入了虚拟线程的 Loom 项目, 这两个功能在 Java 22 中没有变化。

最后的最后,是从 Java 16 以来的钉子户,矢量 API,在 Java 22 中已经来到了第7个孵化版本

以上就是 Java 22 的全部新功能了。

相关推荐

Python操作Word文档神器:python-docx库从入门到精通

Python操作Word文档神器:python-docx库从入门到精通动动小手,点击关注...

Python 函数调用从入门到精通:超详细定义解析与实战指南 附案例

一、函数基础:定义与调用的核心逻辑定义:函数是将重复或相关的代码块封装成可复用的单元,通过函数名和参数实现特定功能。它是Python模块化编程的基础,能提高代码复用性和可读性。定义语法:...

等这么长时间Python背记手册终于来了,入门到精通(视频400集)

本文毫无套路!真诚分享!前言:无论是学习任何一门语言,基础知识一定要扎实,基础功非常的重要,找一个有丰富编程经验的老师或者师兄带着你会少走很多弯路,你的进步速度也会快很多,无论我们学习的目的是什么,...

图解Python编程:从入门到精通系列教程(附全套速查表)

引言本系列教程展开讲解Python编程语言,Python是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,它也是互联网最热门的编程语言之一。Python生态丰富,库(模块)极其丰富,这使...

Python入门教程(非常详细)从零基础入门到精通,看完这一篇就够

本书是Python经典实例解析,采用基于实例的方法编写,每个实例都会解决具体的问题和难题。主要内容有:数字、字符串和元组,语句与语法,函数定义,列表、集、字典,用户输入和输出等内置数据结构,类和对象,...

Python函数全解析:从入门到精通,一文搞定!

1.为什么要用函数?函数的作用:封装代码,提高复用性,减少重复,提高可读性。...

Python中的单例模式:从入门到精通

Python中的单例模式:从入门到精通引言单例模式是一种常用的软件设计模式,它保证了一个类只有一个实例,并提供一个全局访问点。这种模式通常用于那些需要频繁创建和销毁的对象,比如日志对象、线程池、缓存等...

【Python王者归来】手把手教你,Python从入门到精通!

用800个程序实例、5万行代码手把手教你,Python从入门到精通!...

Python从零基础入门到精通:一个月就够了

如果想从零基础到入门,能够全职学习(自学),那么一个月足够了。...

Python 从入门到精通:一个月就够了

要知道,一个月是一段很长的时间。如果每天坚持用6-7小时来做一件事,你会有意想不到的收获。作为初学者,第一个月的月目标应该是这样的:熟悉基本概念(变量,条件,列表,循环,函数)练习超过30个编...

Python零基础到精通,这8个入门技巧让你少走弯路,7天速通编程!

Python学习就像玩积木,从最基础的块开始,一步步搭建出复杂的作品。我记得刚开始学Python时也是一头雾水,走了不少弯路。现在回头看,其实掌握几个核心概念,就能快速入门这门编程语言。来聊聊怎么用最...

神仙级python入门教程(非常详细),从0到精通,从看这篇开始!

python入门虽然简单,很多新手依然卡在基础安装阶段,大部分教程对一些基础内容都是一带而过,好多新手朋友,对一些基础知识常常一知半解,需要在网上查询很久。...

Python类从入门到精通,一篇就够!

一、Python类是什么?大家在生活中应该都见过汽车吧,每一辆真实存在、能在路上跑的汽车,都可以看作是一个“对象”。那这些汽车是怎么生产出来的呢?其实,在生产之前,汽车公司都会先设计一个详细的蓝图...

学习Python从入门到精通:30天足够了,这才是python基础的天花板

当年2w买的全套python教程用不着了,现在送给有缘人,不要钱,一个月教你从入门到精通1、本套视频共487集,本套视频共分4季...

30天Python 入门到精通(3天学会python)

以下是一个为期30天的Python入门到精通学习课程,专为零基础新手设计。课程从基础语法开始,逐步深入到面向对象编程、数据处理,最后实现运行简单的大语言模型(如基于HuggingFace...

取消回复欢迎 发表评论: