建造者模式


建造者模式是将对象复杂的构建过程封装起来,客户端通过选择不同的构建者来构想自己想要的对象

类图

示例

我们来写一个动物的构建者

public abstract class AbstractAnimal {
    // 构造头
    void buildHead(){
        
    }
    // 构造脚
    void buildFoot(){
        
    }
    // 构造尾巴
    void buildTail(){
        
    }
    // 得到构造好的动物
    abstract Animal build();
}

猪构建者:

public class PigBuilder extends AbstractAnimal{
    @overrite
    void build(){
        buildHead();
        buildFoot();
        buildTail();
    }
}

熊构建者:

public class BearBuilder extends AbstractAnimal{
    @overrite
    void build(){
        buildHead();
        buildFoot();
        // 熊没有尾巴,无需要构造尾巴
    }
}
文章作者: 周君
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 周君 !
评论