1. 引入建造者模式
这里改变了一下思路,先举一个例子,再总结得出建造者模式的基本结构。
建造者,顾名思义,建造产品的人,什么产品呢?假设现在建造一个小人。一个小人,要有头、有身子、有手、有脚。
首先来个人,有属性:头、身子、手、脚。
public class Person {
private String head;
private String body;
private String hand;
private String foot;
public String getHead() {
return head;
}
public void setHead(String head) {
this.head = head;
}
public String getBody() {
return body;
}
public void setBody(String body) {
this.body = body;
}
public String getHand() {
return hand;
}
public void setHand(String hand) {
this.hand = hand;
}
public String getFoot() {
return foot;
}
public void setFoot(String foot) {
this.foot = foot;
}
}
好了,下面开始造人,造人就需要造头、身子、手、脚,这里定义一个统一标准的抽象类(或接口)。
public abstract class BuildPerson{
public abstract void buildHead();
public abstract void buildBody();
public abstract void buildHand();
public abstract void buildFoot();
public abstract Person createPerson();
}
定义好一个造人的标准后,就开始具体的创建过程了。
public class ConcreteBuildPerson extends BuildPerson{
private Person person = new Person();
@Override
public void b