- Java 15 教程
- Java 15 - 主页
- Java 15 - 概述
- Java 15 - 环境设置
- Java 15 语言变化
- Java 15 - 密封类
- Java 15 - instanceOf 模式
- Java 15 - 文本块
- Java 15 - 记录
- Java 15 - 记录和密封类
- Java 15 JVM 变化
- Java 15 - 隐藏类
- Java 15 - 垃圾收集器
- Java 15 - 其他更改
- Java 15 - 弃用和删除
- Java 15 - 其他增强功能
- Java 15 - 弃用和删除
- Java 15 有用资源
- Java 15 - 快速指南
- Java 15 - 有用的资源
- Java 15 - 讨论
Java 15 - 记录
Java 14 引入了新的类类型记录作为预览功能,以方便创建不可变数据对象。Java 15 进一步增强了记录类型。它仍然是预览功能。
记录对象具有隐式构造函数,所有参数都作为字段变量。
记录对象对于每个字段变量都有隐式字段 getter 方法。
记录对象对于每个字段变量都有隐式字段设置方法。
Record 对象具有 hashCode()、equals() 和 toString() 方法的隐式合理实现。
在 Java 15 中,无法在记录中声明本机方法。
在 Java 15 中,记录的隐式字段不是最终的,使用反射进行修改将抛出 IllegalAccessException。
例子
考虑以下示例 -
ApiTester.java
public class APITester { public static void main(String[] args) { StudentRecord student = new StudentRecord (1, "Julie", "Red", "VI", 12); System.out.println(student.id()); System.out.println(student.name()); System.out.println(student); } } record StudentRecord(int id, String name, String section, String className, int age){}
编译并运行程序
$javac -Xlint:preview --enable-preview -source 15 APITester.java $java --enable-preview APITester
输出
1 Julie StudentRecord[id=1, name=Julie, section=Red, className=VI, age=12]