我知道 @EqualsAndHashCode
优先于 @Data
,但是其他注释呢?是否有任何简单的规则可以用来确定它?
最佳答案
我只知道一个规则:更具体的注释优先。由于 @Data
不允许配置有关 @EqualsAndHashCode
计算细节的任何内容,后者显然更具体。 @Data
与 @Getter
和其他类似。
另一种情况是类级注释与字段级注释,前者可以被后者覆盖。
请注意,反之则毫无意义。
有一些边界情况,如 @Builder
与 @Data
,不清楚应该生成什么构造函数(IIRC 他们需要 AllArgsConstructor
和 NoArgsContructor
)。明确指定构造函数有帮助。
关于java - Lombok 注释的优先级是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39667434/