遇到多个构造器参数时考虑用构造器
- 提到了流畅接口的问题
- 使用Builder来解决问题
- Effective java的内容
- 当可变参数大于4个以上的时候用Builder,当然一开始就用是比较好的
public class Person {
private final String firstName;
private final String lastName;
private String city;
private String adress;
private boolean marry;
public static class Builder {
private String firstName;
private String lastName;
private String city;
private String adress;
private boolean marry;
public Builder (String firstName , String lastName){
this.firstName = firstName;
this.lastName = lastName;
}
public Builder setCity(String city){
this.city = city;
return this;
}
public Builder setAdress(String adress){
this.adress = adress;
return this;
}
public Builder setMarry(boolean marry){
this.marry = marry;
return this;
}
public Person build(){
return new Person(this);
}
}
private Person(Builder builder){
firstName = builder.firstName;
lastName = builder.lastName;
city = builder.city;
adress = builder.adress;
marry = builder.marry;
}
}
public class test {
Person mPerson = new Person.Builder("xin","gao")
.setCity("henan")
.setMarry(false)
.build();
}
- 通过该Builder模式,以后如果在需要添加参数,直接在Builder中添加setXXX()就行了!!
- 恩 现在就知道这么多…初次理解(刘欣课中的理解)//大家也关注下:微信号 码农翻身