@songying
2018-07-09T10:30:35.000000Z
字数 717
阅读 1101
设计模式
将一个复杂对象的构建和它的表示分离, 使得同样的构建过程可以创建不同的表示。
Product 产品类
通常是实现了模板方法模式, 也就是有模板方法和基本方法。
Builder 抽象建造者
规范产品的组建, 一般是由子类实现。
ConcreteBuilder : 具体建造者
实现抽象类定义的所有方法, 并且返回一个组建好的对象。
Director: 导演类
负责安排已有模块的顺序, 然后告诉Builder开始创建。
public class Product{
public void doSomething(){
//独立业务处理
}
}
public abstract class Builder{
// 设置产品的不同部分,以获得不同的产品
public abstract void setPart();
// 建造产品
public abstract Product buildProduct();
}
public class ConcreteProduct extends Builder{
private Product product = new Product();
// 设置产品零件
public void setPart(){
// 产品类内的逻辑处理
}
//组建一个产品
public Product buildProduct(){
return product;
}
}
public class Director{
private Builder builder = new ConcreteProduct();
//构建不同的产品
public Product getAProduct(){
builder.setPart();
return builder.buildProduct();
}
}