Java14 新特性
2013 年 9 月 1 日
作者:朋也
日期:2021-02-19
版权声明:自由转载-非商用-非衍生-保持署名( 创意共享3.0许可证 )
- instanceof 模式匹配 -> 替换强制类型转换
- NullPointException异常信息更详细
- ZGC可在Macos和Windows上使用
以下内容整理自尚硅谷的视频教程
instanceof 模式匹配 -> 替换强制类型转换
用处:可以省去强制转换
NullPointException异常信息更详细
启动时添加一个启动参数可以让空指针异常信息更完整
在启动程序的时候,添加上 -XX:+ShowCodeDetailsInExceptionMessages
Record(官方的Lombok)
新增的一个关键字record,跟class,interface同一级别
这货就是为了不用写setter, getter方法而存在的,用法如下
以前定义一个实体类带setter, getter的写法如下
用上 record 后的写法
Person.class内容
可以看到,jdk在编译的时候做了跟lombok一样的事情
问题:
- record类不能继承其它类(因为record反编译过来后就是个final类)
- record类不能再被abstract修饰(因为record本身就已经继承了Record类)
switch语法糖
switch的语法糖已经不再是实验性质的了
用法如下图
且它还有返回值,可以使用变量接收
使用yield返回默认值,或者不使用 -> 直接使用 : 也可以配合着yield返回值
多行文本
java程序员垂涎已久的功能,终于添加上了,用法如下
ZGC可在Macos和Windows上使用
号称最牛逼的垃圾回收机ZGC在jdk14以前还只能用在linux上,14开始可以在macos和windows上用了