Java 14 记录类:简洁的不可变数据类
Java 14 引入了一种新的类型,称为记录 (record) 类,而不是 JDK 9。记录类是一种紧凑的类声明,用于声明不可变的数据类。它们提供了一种简洁的方式来定义类,只需声明字段,而不需要手动编写 getter、setter 和 equals、hashCode 等方法。
记录类具有以下特点:
- 自动创建字段:记录类自动创建了私有的 final 字段,用于存储类的状态。
- 自动创建构造函数:记录类自动创建了一个构造函数,该构造函数接受所有字段作为参数,并将它们赋值给相应的字段。
- 自动创建 equals 和 hashCode 方法:记录类自动创建了 equals 和 hashCode 方法,这些方法根据记录类的字段进行比较。
- 自动创建 toString 方法:记录类自动创建了 toString 方法,该方法返回记录类的字段名称和值。
以下是一个使用记录类的示例:
public record Person(String name, int age) {
// 可以在记录类中添加其他方法
}
上述代码定义了一个名为 Person 的记录类,它具有两个字段:name 和 age。记录类自动创建了一个构造函数,可以使用以下方式创建 Person 对象:
Person person = new Person('John', 30);
记录类还自动创建了 equals、hashCode 和 toString 方法,可以使用以下方式使用它们:
System.out.println(person.equals(new Person('John', 30))); // 输出 true
System.out.println(person.hashCode()); // 输出一个哈希码
System.out.println(person.toString()); // 输出 'Person[name=John, age=30]'
总之,JDK 14 引入了记录类,它提供了一种简洁的方式来定义不可变的数据类。记录类自动创建字段、构造函数、equals、hashCode 和 toString 方法,减少了手动编写这些方法的工作量。
原文地址: https://www.cveoy.top/t/topic/onAD 著作权归作者所有。请勿转载和采集!