JDK17会代替JDK8吗?

俗话说:“它发认它发,我用Java8”。

但是随着Spring 6.0以及SpringBoot 3.0的发布,JDK17似乎大有取代JDK8的趋势了。

Spring Boot 3.0 requires Java 17 as a minimum version. If you are currently using Java 8 or Java 11, you'll need to upgrade your JDK before you can develop Spring Boot 3.0 applications.

Spring 6.0&SpringBoot 3.0对AOT的支持,能极大提高应用的启动速度,从而可以弥补Java在云原生、Serverless等领域的缺陷,据我所知,某著名大厂内部已经在进行升级了。

另外,JDK17是一个LTS(长期支持版),可以免费商用到2029年,JDK17本身在性能上也有优化,比如对于NIO的性能优化,至少提升了10%。

随着各大框架对JDK17的支持,JDK17取代JDK8只是时间问题。

这里我大致列以下JDK9-JDK17中几个关键的新特性:

  1. sealed 密封类

  1. 文本块

  1. record 纪录类

  1. G1成为默认垃圾收集器

  1. ZGC的完善与升级

  1. JDK模块化

  1. JFR飞行器

  1. 新swich表达式

  1. 虚拟线程

  1. ...

比如SpringBoot3.0的源码中就用到了新特性:

虽然JDK17跟JDK8相比较确实增加了很多新特性,不管是语法上、性能上,都在积极的吸取其他语言的特点,并且整个Java生态也在不断的升级为JDK17,但是对于公司而言,除非是新项目、新应用,不然是不太可能把现有项目升级到JDK17的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值