黑马程序员技术交流社区

标题: 23种设计模式---模板方法设计模式 [打印本页]

作者: 小麦芽    时间: 2017-4-6 17:24
标题: 23种设计模式---模板方法设计模式
模板方法设计模式,刚开始一眼看去像是建造者模式,但是有本质的区别,建造者设计模式只是用来创建不同对象,执行对象中相同的方法的,但是方法实现的细节不同。
但是模板方法设计模式不同,它是行为模式之一,它把具有特定步骤算法中的某些必要的处理让给了抽象方法,通过子类继承抽象方法的不同实现改变整个算法的行为。

//--------------造车的抽象类-----------------------------
* 组装车
*/
public abstract class MakeCar {
        //组装车头
        public abstract void makeHead();
       
        //组装车身
        public abstract void makeBody();
       
        //组装车尾
        public abstract void makeTail();
       
        public final void make() {
                this.makeHead();
                this.makeBody();
                this.makeTail();
        }
}

//---------------具体造那种车的子类-----------------------------
public class MakeBus extends MakeCar {

        public void makeBody() {
                System.out.println("bus:组装车身");
        }

        public void makeHead() {
                System.out.println("bus:组装车头");
        }

        public void makeTail() {
                System.out.println("bus:组装车尾");
        }
}


//---------------测试类----------------------
public class MainClass {
        public static void main(String[] args) {
                MakeCar bus = new MakeBus();
                bus.make();
        }
}

看着很简单,还是得多谢谢,体会一下。才能知道什么时候用!
作者: 咯一块空地    时间: 2017-4-6 21:12
我今天最想说:「每天最快乐的事,就是来黑马论坛签到。」.





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2