不同版本的JDK新特性

文章介绍了Java从JDK9到JDK17的一些重要更新,包括JDK9的模块化开发,JDK10的var局部变量推导,JDK11的单文件程序和shebang脚本支持,JDK14的文本块和增强的instanceof,JDK16的record类,以及JDK17的sealed类等特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.JDK9:模块化开发

模块化功能用的不是很多

2.JDK10:var局部变量推导

使用var的两个基本要求:
在这里插入图片描述

也用得不是很多

3.JDK11

(1)单文件程序
就是能够直接用java命令编译.java文件了,跳过了使用javac命令的步骤,对新人友好一些,但是在工程里也不会用到这个。
在这里插入图片描述

(2)shebang脚本
在这里插入图片描述
在这里插入图片描述

Linux中,同理,如果#!后面改成python的路径,就可以执行python脚本。
从JDK11开始,java也支持这种方式了,如下。
在这里插入图片描述

脚本文件只可以在Linux(Unix)中执行,windows如果想要执行需要安装git-for-windows。
在这里插入图片描述

同时,脚本中必须加上’–source 11’才行。
在这里插入图片描述

然后,在git-for-windows中,执行时脚本名前加上’./’就可以执行。
在这里插入图片描述

注意事项:’–source 11’和’./’这两个是必须加的。

4.JDK14

(1)文本块,如下json2相对于json1,使用三个双引号,提高了可读性。
在这里插入图片描述

(2)instanceof增强,如下,相当于两行简化成1行。
在这里插入图片描述

5.JDK16

(1)record类
只初始化一次,后面不会再改,就用record类,相当于变量中定义了final。替换了class关键字。
直接给的是一个name的方法。
在这里插入图片描述

6.JDK17

(1)sealed类:显示管理类的继承。sealed关键字修饰class。
在这里插入图片描述

定义sealed类并允许Jiawa2这个类继承。
在这里插入图片描述

(2)switch增强(只在预览版有
与instanceof进行配合。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值