其他分享
首页 > 其他分享> > 模板方法

模板方法

作者:互联网

模板方法是设计模式中的一种,它主要用在这样的场景下,对于一个处理过程,可以将其中不变的抽取为模板,放在父类(或接口)中,而变化的部分放在子类中来实现。

举个例子,拿盖房子来说,简单可以分为4个步骤,第一步打地基,第二步砌墙,第三步封顶,第四步装修。

对于盖任何类型的房子,都是上面的三步,这是不变的部分。根据模板方法的思路,应该将不变的部分放在父类或接口中。那么接口可以如下定义。

盖房子接口{
    void 打地基();
    void 砌墙();
    void 封顶();
    void 装修();
    void 盖房子(){
        打地基();
        砌墙();
        封顶();
        装修();
    }

}

对于盖不同的房子,各个步骤是有差别的。比如盖平房和盖楼房,在打地基、砌墙、封顶、装修方面,都是存在差别的。

按照模板方法的思想,这些差别应该放在子类中来实现。

那么我们可以如下实现盖平房的类和盖楼房的类。

平房 implements 盖房子接口 {
    void 打地基(){
        打平房地基;
    }
    void 砌墙(){
        砌平房的墙;
    }
    void 封顶(){
        封平房的顶;
    }
    void 装修(){
        平房装修;
    }
}

盖楼房的类实现和它类似,这里就不再赘述。

标签:平房,地基,void,封顶,方法,模板,砌墙
来源: https://blog.csdn.net/li_canhui/article/details/89162338