意图:将一个复杂对象的构建与它的表示分离,使得同样的构建过程能生成不同的表示(实例)。
类型:对象创建型;
组成:
Builder接口:为创建一个Product对象的各个部件指定接口;
Builder接口实现:实现Builder接口以构建和装配Product的各个组件;
Product:被构造的复杂对象;
Director:使用Builder接口的对象;
/*Builder接口*/
public interface Builder{
public Product pro();
public void setPro();
}
/*Builder接口实现了*/
public class BuilderImp implements Builder{
private Product product = new Product();
public Product pro(){
return product;
}
public void setPro(){
product.setName()
product.setType();
}
}
/*Product产品类*/
public class Product{
public void setName(){
}
public void setType(){
}
}
/*Builder调用者*/
public class Director{
private Builder = new BuilderImp();
public Product getPro(){
builder.setPro();
return builder.pro();
}
}
public class Client{
public static void main(Stirng[] args){
Director direct = new Director();
Product product = direct.getPro();
}
}