建造者模式是通过多个简单的对象一步步构建出一个复杂对象。将类的构建与其表示分离。同样的创建过程,可以创建不同的表示的对象。比如Android的AlertDialog的构建,Retrofit的构建等,就是构建者模式。
它的使用场景:
- 类的内部结构复杂。
- 对象内部属性相互依赖。
public class Dog {
private String name;
private int age;
private String sex;
public String getName() {
return name;
}
public void setName(String mName) {
name = mName;
}
public int getAge() {
return age;
}
public void setAge(int mAge) {
age = mAge;
}
public String getSex() {
return sex;
}
public void setSex(String mSex) {
sex = mSex;
}
}
再创建一个Builder类
public class DogBuilder {
private Dog d;
public DogBuilder() {
d = new Dog();
}
public DogBuilder setName(String name){
d.setName(name);
return this;
}
public DogBuilder setAge(int age){
d.setAge(age);
return this;
}
public DogBuilder setSex(String sex){
d.setSex(sex);
return this;
}
public Dog build(){
return d;
}
}