前言
最近在用lomBok
的builder
的时候遇到这样一个问题:就是单用一个@builder
注解不会继承父类的属性;那如何解决呢???
正文
接下来看看几种解决的方式吧!
方式一
parent
类:
@Setter
@Getter
public class Parent {
private String userName;
private String password;
private String url;
public Parent(String userName, String password, String url) {
this.userName = userName;
this.password = password;
this.url = url;
}
}
Child
类:
@Getter
@Setter
@ToString
public class Child extends Parent {
private String address;
private String phone;
@Builder
public Child(String userName, String password, String url, String address, String phone) {
super(userName, password, url);
this.address = address;
this.phone = phone;
}
}
注意点:
- 这里需要注意的是
@Builder
注解所放置的位置; @ToString
并不会将父类的属性输出- 如果要获取父类的属性值,父类添加
@Getter
注解即可
方式二
Parent
类:
@SuperBuilder
@Getter
public class Parent {
private String userName;
private String password;
private String url;
}
Child
类:
@SuperBuilder
@Getter
public class Child extends Parent {
private String address;
private String phone;
}
最后
灌水文