2、lombok的注解影响不了父类的属性

跟風遠走 提交于 2020-04-12 16:34:27

lombok的注解影响不了父类的属性,只能影响当前类的属性。例子如下:

例子1:子类Test中使用@Setter、@Getter,并不能给父类的属性id生成Setter、Getter。

public class BaseEntity{
	private String id;
}

@Getter
@Setter
public class Test extends BaseEntity{

    private String code;
    private String name;
}

例子2:子类Test中使用@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 不知道未来的版本会不会加到稳定版。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!