lombok的注解影响不了父类的属性,只能影响当前类的属性。例子以下:测试
@Setter、@Getter
,并不能给父类的属性id生成Setter、Getter。public class BaseEntity{ private String id; } @Getter @Setter public class Test extends BaseEntity{ private String code; private String name; }
@Builder
,也不能使用Builder模式给父类的id设置值。public class BaseEntity{ private String id; } @Builder public class Test extends BaseEntity{ private String code; private String name; public static void main(String[] args) { Test.builder().id("123") //错误,没有这个方法 } }
在子类和父类中都使用@SuperBuilder
,去掉@Builder
,能够实现使用Builder模式给父类的属性设置值。可是这个在lombok版本1.18.8是实验性质的功能,没有通过官方测试。文档:https://projectlombok.org/features/experimental/all 不知道将来的版本会不会加到稳定版。ui