-
蓝山帝景
经过一些研究,我最终得到了Brian Goetz 写的《Java 数据类和密封类型》 。这是JEP,记录(预览),链接到上面的内容。摘要 - 这只是一个想法/JEP。因此,我们无法判断它何时会实施(或者是否会实施)
-
慕田峪4524236
爪哇记录正在预览的记录功能提供“声明类,这些类是浅层不可变数据的透明持有者” 。换句话说,一个名义元组,一个特定的有序元素序列。记录是一种特殊的类。在定义记录类别时,您需要牺牲一些灵活性来换取简洁性。这是一个完整的记录类定义示例:record Task( String title , String notes , LocalDate due ) {}或者:record Dog( Breed breed , Color color , String name ) {}编译器隐式负责提供构造函数、成员字段、访问器方法、toString、hashCode和equals。如果需要,您可以选择覆盖这些,例如定义一个构造函数来验证输入。
-
12345678_0001
record Range(int lo, int hi)将替换package javax0.geci.tests.record;import javax0.geci.annotations.Geci;@Geci("record")public final class Range { final int lo; final int hi; //<editor-fold id="record"> public Range(final int lo, final int hi) { this.lo = lo; this.hi = hi; } public int getLo() { return lo; } public int getHi() { return hi; } @Override public int hashCode() { return java.util.Objects.hash(lo, hi); } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Range that = (Range) o; return java.util.Objects.equals(that.lo, lo) && java.util.Objects.equals(that.hi, hi); } //</editor-fold>}