Java设计模式记录:(三)、建造者模式

建造者模式:将一个复杂对象的创建在建造类中定义实现方法。

class Product {
    private String name;
    private String type;
    public void showProduct(){
        System.out.println("名称:"+name);
        System.out.println("型号:"+type);
    }
    public void setName(String name) {
        this.name = name;
    }
    public void setType(String type) {
        this.type = type;
    }
}
abstract class Builder {
    public abstract void setPart(String arg1, String arg2);
    public abstract Product getProduct();
}
class ConcreteBuilder extends Builder {
    private Product product = new Product();
    public Product getProduct() {
        return product;
    }
    public void setPart(String arg1, String arg2) {
        product.setName(arg1);
        product.setType(arg2);
    }
}
public class Director {
    private Builder builder = new ConcreteBuilder();
    public Product getAProduct(){
        builder.setPart("宝马汽车","X7");
        return builder.getProduct();
    }
    public Product getBProduct(){
        builder.setPart("奥迪汽车","Q5");
        return builder.getProduct();
    }
}
public class Client {
    public static void main(String[] args){
        Director director = new Director();
        Product product1 = director.getAProduct();
        product1.showProduct();
        Product product2 = director.getBProduct();
        product2.showProduct();
    }
}    

 

你可能感兴趣的:(Java设计模式,Java的设计模式)