JDK17新特性 即将成为主流的JDK 深入了解


对于JDK17比较明显的特性 总结

Switch 语句增强

首先就是简化了Switch语句:
在这里插入图片描述
去掉了break及可以直接给返回值赋值。并且再匹配多个值的时候也做了调整:
在这里插入图片描述
这样看起来是不是很简单了。
新增了yield关键字
相当于我们使用的return
在这里插入图片描述
用来返回对象。

对象类型的匹配
在这里插入图片描述

优化字符串拼接代码

相信大家之前在代码中拼接字符串的时候一定遇到过
在这里插入图片描述
在jdk17就会变得很友好啦,就有了转义符。在sql,json,html中都有优化,通过三个双引号来解决

instanceof增强

在这里插入图片描述
在之前的版本,当使用instanceof判断之后,如果是属于类型的话,想使用还要进行强转,在之后的版本就不需要了,用法如上图。

密封类(限制继承类)

在这里插入图片描述

sealed 修饰父类,就是设置当前类为密封类
permits 为允许继承的子类 只有permits后面的类才能继承
注意 Dog Cat 类必须使用non-sealed或者final修饰,并且Dog Cat必须和密封类在同一个包中。
在这里插入图片描述

final表示子类不会再被继承,non-sealed表示子类可以再被其他类继承

密封类的优点

  • 安全 限制了子类的继承,避免了一些不必要的继承。
  • 可控 因为在同一个包中 减少了代码的复杂性 易于维护

ZGC垃圾收集器

相信大家在学Jvm的时候都有听过STW(Stop The Word),就是在垃圾回收触发的时候Jvm的内存将会被冻结,所有的线程都会停止运行,发生卡顿。这是不可避免的,所以说最好的办法就是减少垃圾回收的时间。

ZGC的STW的时间是小于10ms,时间很短几乎感受不到,并且ZGC的堆内存可以设置很大甚至是T级别的,所以说触发GC的次数就会大大减少。提高性能。

添加以下JVM选项就可以开启ZGC

-XX:+UseZGC

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杵意

谢谢金主打赏呀!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值