通知 网站从因情语写改为晴雨,这个网站的模板也从calmlog_ex改为 whimurmur

创建型模式-建造者模式

1494人浏览 / 0人评论 / | 作者:因情语写  | 分类: 设计模式与算法  | 标签: 设计模式与算法  | 

作者:因情语写

链接:https://www.proprogrammar.com/article/441

声明:请尊重原作者的劳动,如需转载请注明出处


  一个类的创建可能要完成一系列复杂的操作,这时候就可以用构造器模式来完成对象的创建

  以人造车为例

  构建者即其实现类

package creational.pattern.builder;

public abstract class Builder {
    public abstract void buildEngine();  
    public abstract void buildTyre();  
    public abstract void buildCar();  
    public abstract void getCar();
}
package creational.pattern.builder;

public class BMW extends Builder {

    @Override
    public void buildEngine() {
        System.out.println("build BMW engine.");
    }

    @Override
    public void buildTyre() {
        System.out.println("build BMW tyre.");
    }

    @Override
    public void buildCar() {
        System.out.println("build BMW car.");
    }

    @Override
    public void getCar() {
        System.out.println("get a BMW car.");
    }

}

  建造的实施方

package creational.pattern.builder;

public class Director {
    public void product(Builder builder)
    {
        builder.buildCar();  
        builder.buildEngine();  
        builder.buildTyre(); 
    }
}

  测试代码

package creational.pattern.builder;

public class Client {

    public static void main(String[] args) {
        Builder builder=new BMW();//创建一个Builder对象  
        Director director=new Director();//创建一个Director对象  
        director.product(builder);//Director对象造车  
        builder.getCar();//将制造的车返回
    }

}

  运行效果


亲爱的读者:有时间可以点赞评论一下

点赞(0) 打赏

全部评论

还没有评论!
广告位-帮帮忙点下广告