美文网首页Android技术知识让前端飞
android-学渣系列- 设计模式学习 - 建造者模式

android-学渣系列- 设计模式学习 - 建造者模式

作者: 品味与回味 | 来源:发表于2019-01-08 13:16 被阅读1次
    1111.jpg

    不知道大家有没有我这种体会,建造者模式,builder,生成器模式,这三个好像啊,哈哈, 好了 开始我们今天的学习,

    builder 讲一个复杂对象的构建与他的表示分离,是的同样的构建过程可以创建不同的表示

    image.png

    在写程序之前 大家 思考一下这个和工厂有什么不同的 builder和下面的继承这个builder和工厂的哪一步一样?

    image.png

    和这一步一样 ,那么区别呢?

    ifactory抽象工厂和具体工厂模式替换成了Director,

    Director和builder是聚合关系,用Director来达到创建对象的逻辑。 而不同的对象 是通过继承builder

    建造模式 他创建比较复杂的对象 而且特点是 对象的创建和构造过程是分离的,每一步都是有步骤,不像是工厂 他的创建和构造是同步的。通过ifactory就完成了,

    
    public class work {
    }
    
    
    
    package com.dictory;
    
         public abstract class  httpworkbuilder {
            public  abstract  void setlaijie();
            public  abstract void  setshuju();
            public  abstract  work getwork();
    
    }
    
    
    package com.dictory;
    
    public class jhttpwork extends  httpworkbuilder {
    
    
        private  work work = new work();
        @Override
        public void setlaijie() {
    
    
        }
    
        @Override
        public void setshuju() {
    
        }
    
        @Override
        public work getwork() {
            return work;
        }
    }
    
    
    package com.dictory;
    
    public class director {
        public  void  Construct(httpworkbuilder httpwork){
            httpwork.setlaijie();
            httpwork.setshuju();
        }
    
    
    }
    
    
      /**
             * builderm模式
             * 思考一下 和上面的有什么关系
             * work的创建和构建是分离的
             * 构建是通过director
             *
    
             *
             */
    
            director  director =  new director();
            httpworkbuilder httpworkbuilder =  new jhttpwork();
            director.Construct(httpworkbuilder); 
    上面是构建对象  下面是创建对象
            work work = httpworkbuilder.getwork();
    
    
    

    相关文章

      网友评论

        本文标题:android-学渣系列- 设计模式学习 - 建造者模式

        本文链接:https://www.haomeiwen.com/subject/qyrvrqtx.html