介绍
2020年9月, Oracle 为 Java Development Kit平台(又名Java 15)发布了一个新的短期版本。当然,这在开发领域引起了很多反响,主要是由于它带来了许多变化和高级条款,提供给开发人员。
尽管这只是一个短期发行版,Java 15还是取得了很大的成功。例如增加了 hidden classes、text blocks、Z Garbage Collector 以及外部内存访问API等等。
简而言之,与旧版本相比,Java 15提供了多达15项重大改进,包括将ZGC和Shenandoah GC从试验版本指定为生产版本。
Java 15还取消了特定的规定和功能,以使其使用比以前更加简单。值得注意的是,它带来的所有变化中,最显着的无疑就是密封类的添加。对于初学者来说,它使程序员现在可以在为模式匹配进行进一步改进时显式地描述子类型。
- 密封类: 密封类有助于管理接口和扩展类。此特定功能的目的是使类或接口作者能够管理负责其实现的代码。必须指出的是,密封类现在包含两个新关键字的使用,即 sealed 和 permits。
- 新的记录类型: Java 15现在还获得了新的记录类 record class,使开发人员可以更简洁地勾勒出相同的不可变对象。
- 隐藏类: Java 15中的另一个重要新特性是隐藏类,它对使用 JVM 语言甚至是动态字节码的开发人员都是有益的。隐藏类使您可以在运行时创建不可被发现的会话,意味着它们既不能与其他类链接,也不能通过反射来发现,因为此类通常与较短的 生命周期 相关联。
Java 15中的隐藏类功能确保了它的加载和卸载的效率很高。这里要注意的一个关键点是,当前的Java迭代确实促进了匿名类的创建,就像隐藏类一样。但是,与匿名类不同,隐藏类不依赖于Unsafe API。
Java 15带来了很多好处,即使它仍是短期发行版。有密封类、模式匹配类型检查、垃圾收集器和许多其他关键更改。