【Java代码之美】 -- Java17新特性初探
2021/9/21 12:26:56
本文主要是介绍【Java代码之美】 -- Java17新特性初探,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.背景
Oracle与9月中旬正式宣布推出Java17,正如官方所说:
- JDK17是最新的长期稳定支持的版本作为JDK11之后的下一个长期支持的版本;
- 也是Spring Framework6与SpringBoot 3在运行时至少需要运行的JDK版本环境;
- JDK17提供了数以千计的性能、稳定性和安全更新,以及14个JEP(JDK增强建议),用于帮助开发人员提高效率
下面来简单地介绍一下其中主要的特性。
2.新特性说明
2.1.密封类转正
密封类(Sealed Classes)是 Java 15 引入的, Java 17 正式转正。
密封类可以对继承或者实现它们的类进行限制。
比如抽象类 Person
只允许 Employee
和 Manager
继承。
public abstract sealed class Person permits Employee, Manager { //... }
另外,任何扩展密封类的类本身都必须声明为 sealed
、non-sealed
或 final
。
public final class Employee extends Person { } public non-sealed class Manager extends Person { }
2.2.JDK内部元素强封装
很多程序员以损害安全性和可维护性的方式使用 JDK 的内部元素比如一些非public
类、方法和字段。
为了继续提高 JDK 的安全性和可维护性,默认强封装 JDK 的所有内部元素,从而限制对它们的访问,除了关键的内部 API 如sun.misc.Unsafe
。
2.3.macOS/AArch64 平台支持
由于 JDK 在 macOS/AArch64 的广泛需求,Oracle 宣布将 JDK 移植到 macOS/AArch64 平台,增加了 Apple 去年发布的新 CPU 系列 (M1) 的支持。
2.4.标记删除Applet API
Applet API 提供了一种将 Java AWT/Swing 控件嵌入到浏览器网页中的方法。不过,目前 Applet 已经被淘汰。大部分人应该和我一样,压根就没有用过 Applet。
Java 9 的时候,Applet API 已经被标记为启用,Java 17 的时候终于标记为删除了。
2.5.删除RMI Activation
RMI 即 Remote Method Invocation ,其为java教程提供了远程方法调用的能力,不过,比较鸡肋,基本不会用到。RMI Activation 为激活分布式对象提供支持,不过,一般也不会用到。
Java 15 的时候, RMI Activation 已经被弃用,Java 17 的时候终于被删除了。
这篇关于【Java代码之美】 -- Java17新特性初探的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南