1.含义:建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象.
2.类图
一个产品
多个产品
3.类
/**
* 导演者角色
*/
public class Director {
private Builder builder;
public void construct() {
builder = new ConcreteBuilder();
builder.buildPart1();
builder.buildPart2();
Product p = builder.retrieveResult();
S.s(p);
}
}
/**
* 抽象建造者
*
*/
public abstract class Builder {
public abstract void buildPart1();
public abstract void buildPart2();
public abstract Product retrieveResult();
}
/**
* 具体建造者
*
*/
public class ConcreteBuilder extends Builder {
private Product product = new Product();
@Override
public void buildPart1() {
}
@Override
public void buildPart2() {
}
@Override
public Product retrieveResult() {
return product;
}
}
//产品类
public class Product {
}
//测试用类
public class Client {
public static void main(String[] args) {
Director d = new Director();
d.construct();
}
}
z