Android 构建者模式(Builder)
这样吧,这次先上代码,再叙述
public class Student {
private String name;
private int age;
private Student(Builder builder){
this.name=builder.name;
this.age=builder.age;
}
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;
}
static class Builder{
private String name;
private int age;
public Builder name(String name){
this.name=name;
return this;
}
public Builder age(int age){
this.age=age;
return this;
}
public Student build(){
return new Student(this);
}
}
}
其实大体是这样设计得
- 在实体类中有一些属性,然后在其内部静态类Builder中也有一样的属性
- 将实体类中的构造方法私有化
- 实体类由Builder构建出来,实体类中的属性值由构造时传入的Builder对象为其赋值
- Builder的每个方法都是给自己的属性赋值,并返回自己Builder的引用
达到上面4点,则在构建时就可以这样写
Student.Builder builder=new Student.Builder();
Student student=builder
.name("小明")
.age(10)
.build();
很爽吧…nice

浙公网安备 33010602011771号