why技术

昨天晚上 JDK 22 都发布正式版本了,学不动了,学不动了...

你好呀,我是歪歪。

刚刚在网上冲浪的时候,发现昨天晚上 JDK 22 版本“悄悄咪咪”的发布了 GA 版本。

https://openjdk.org/projects/jdk/22/

Image

GA 版本,就是 “General Availability” 的缩写,如果对外发布一个 GA 版本,就意味着这个版本已经经过全面的测试,不存在任何重大的 bug,官方开始推荐广泛使用了。

在 JDK 22 版本里面一共发布了 12 个新特性:

Image

这 12 个新特性,涉及到 Java 核心库、Java 语言规范、Java 开发工具、JVM 这四个大方向。

关于每个新特性的介绍和带来的价值,官方的这篇文章写的比较清楚了:

https://inside.java/2024/03/19/the-arrival-of-java-22/

可以仔细看看官方的这篇文章,虽然全是英文,不要害怕,摸鱼的时候可以结合翻译软件慢慢看嘛,毕竟这里属于是第一手资料了。

看到自己感兴趣的新特性,可以点击对应的详细描述进一步了解相关情况。最好是把 JDK 22 版本拉下来,把官方介绍里面的 Demo 拿下来跑跑。

歪师傅这里就不带着大家进行一一翻译,解读了(主要是有些新特性我也没看懂)。

只是浅浅的看一个点:

  • 460:Vector API (Seventh Incubator)

https://openjdk.org/jeps/460

Image

你看一下它的简介,大概是在说提供了一套关于向量计算的 API,这些向量计算在运行时,如果对应的 CPU 架构支持优化,那么可以编译成最佳向量指令,从而达到更牛逼的计算性能。

为啥我要把这个玩意单独拿出来说呢?

还记得我之前文章中提到过的“十亿行挑战”吗?

https://github.com/gunnarmorling/1brc

Image

其中在优化手段建议部分,就提到了“Vector API”。

我也是在这里第一次接触到这个玩意,然后临时抱佛脚的了解了一下。在大量数据的计算场景下,你只要用这个语法编写代码,那么这个玩意会给你提供 CPU 指令级别的优化:

Image

虽然我看不懂,但是这并不妨碍我大受震撼。

而且我也知道,在我的实际工作中,绝对是用不到这个新特性的,但是我通过另外一个方式了解过,和别人吹牛的时候也能聊上几句。

另外,我还想“挖个坟”。

在 JDK 21 发布的时候,我也写过这样一篇文章:《朋友们,就在今天,JDK 21,它终于带着重磅新特性正式发布了!》

在文章中,我提到:根据官方的消息,最开始 JDK 21 的版本中是包含了 Shenandoah 的。但是 JDK 12 的 GA 版本中并没有看到它的影子。

当时官方的说法是:因为 Shenandoah 在审查的过程中发现了明确的风险,并且没有足够的时间来进行针对大量代码改动所需的评审。

翻译过来就是:别问,问就是时间紧,任务重,申请延期。

然后画了一个新饼:

Image

现在 JDK 22 也 GA 了...

没有任何 Shenandoah 的消息。

果然,印证了那句老话呀:不要轻易画饼啊。

哦,对了,还有一件事:

昨天除了发布 JDK 22 外,JavaOne 大会也官宣要回归了,只不过是 2025 年:

Image

可以期待一波。

最后全文最重要的一句话来了:

你发任你发……(请评论区对暗号)

··············  END  ··············

Image

推荐👍:高手过招的杀手锏,了解一下?

推荐👍:你只管打开,然后剩下的交给收藏夹。

推荐👍:准备去大厂和刚去大厂的,全文背诵,常看常新。

推荐👍:线程池参数请不要这样设置。

推荐👍:一个普通程序员磕磕绊绊,又闪闪发光的十年。

你好呀,我是歪歪。我没进过一线大厂,没创过业,也没写过书,更不是技术专家,所以也没有什么亮眼的title。

当年高考,随缘调剂到了某二本院校计算机专业。纯属误打误撞,进入程序员的行列,之后开始了运气爆棚的程序员之路。

说起程序员之路还是有点意思,可以点击蓝字,查看我的程序员之路。