创建型模式之建造者模式

建造者模式

简单建造者

点评:根据不同的条件构建一个对象,和工厂其实一样,就是工厂的构建是死的,这个可以灵活点

/**
 * 建造者设计模式
 * 1.抽象建造者
 * 2.具体建造者
 * 3.产品角色
 * 4.导演者角色
 */
    //产品角色
    class Product{
    }

    //抽象建造者
    abstract class Builder{
        //设置产品的不同的部分,获得不同的产品
        abstract void setPart1();
        abstract void setPart2();
        abstract void setPart3();
        abstract Product builderProduct();
    }

    //具体建造者
    class ConcreteBuilder extends Builder{
        Product product = new Product();
        @Override
        void setPart1() {
            //安装部件
        }

        @Override
        void setPart2() {
            //安装部件
        }

        @Override
        void setPart3() {
            //安装部件
        }

        @Override
        Product builderProduct() {
            return product;
        }
    }

    //导演者
    class Director{
        private Builder builder = new ConcreteBuilder();
        public Product build(){
            builder.setPart1();
            builder.setPart2();
            builder.setPart3();
            return builder.builderProduct();
        }
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容