第一次对建造者模式有接触印象是在使用Okhttp3的时候,他为类下面的成员变量赋值不是使用getter,setter方法,而是连着使用了几个“."就成功的把对象创建成功了,十分简洁!!!当时其实还不知道23种设计模式的。
public class Person {
private String name;
private int age;
private String gender;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public static class Builder {
private Person person = new Person();
public Builder(){
}
public Builder man(){
person.setGender("man");
return this;
}
public Builder woman(){
person.setGender("woman");
return this;
}
public Builder name(String name){
person.setName(name);
return this;
}
public Builder age(int age){
person.setAge(age);
return this;
}
public Person build(){
return person;
}
}
public static void main(String[] args) {
Person person = new Person.Builder().man().age(18).name("sundae").build();
}