当您需要专注于建模不可变数据而不是可扩展行为时,检查会很有用。 数据驱动方法的自动实现,例如 equals 和访问器,有助于消除样板。
请注意,不是每个类都可以成为记录。 以下是一些限制:
要获取完整的限制列表,请参阅 Oracle 文档。
示例:
class Point {
private final double x;
private final double y;
Point(double x, double y) {
this.x = x;
this.y = y;
}
double getX() {
return x;
}
double getY() {
return y;
}
}
在应用快速修复后:
record Point(int x, int y) {
}
启用建议重命名 get/is 访问器选项以允许将 getX()
/isX()
访问器自动重命名为 x()
。
使用当转换使成员更易于访问时选项可指定转换是否可以违反类封装:
使用禁止转换有以下注解的类列表可在要转换的类中排除其注解匹配指定模式的类。
仅当项目或模块的语言级别为 16 或更高时,此检查才会报告。
2020.3 最新变化