建造者模式
建造者模式是创建型设计模式中最容易理解、应用的一种设计模式。工厂模式与建造者模式创建出来的Bean实例有一定的特点,
工厂模式生产的Bean具有共同的特性,类似于产品;而建造者模式创建的Bean更多的是带有个人化定制的特点。
下面是简单的一个建造者模式Demo:
先准备一个实体Bean:
public class Student {
private String name;
private Integer age;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", sex='" + sex + '\'' +
'}';
}
}
接着创建一个StudentBuilder:
public class StudentBuilder {
private Student student = new Student();
public StudentBuilder setName(String name){
this.student.setName(name);
return this;
}
public StudentBuilder setAge(Integer age){
this.student.setAge(age);
return this;
}
public StudentBuilder setSex(String sex){
this.student.setSex(sex);
return this;
}
public Student build(){
return student;
}
}
StudentBuilder类可以随意给即将生产的Student实例设置各种属性。
下面给出测试代码:
@Test
public void TestBuilder(){
Student student = new StudentBuilder()
.setName("huangzeng")
.setAge(26)
.setSex("男")
.build();
System.out.println(student);
}
执行结果如下:
Student{name='huangzeng', age=10, sex='男'}
浙公网安备 33010602011771号