package com.maom.design.D_21_TemplateMethod;
/**
* @Title: D_21_TemplateMethod
* @Description: 21_模版方法模式
* @Author maohb
* @Version 1.0
*/
public class D_21_TemplateMethod {
public static void main(String[] args) {
MakeCar bus = new MakeBus();
// bus.makeHead();
// bus.makeBody();
// bus.makeTail();
bus.make();
System.out.println("-------------------");
MakeCar jeep = new MakeJeep();
// jeep.makeHead();
// jeep.makeBody();
// jeep.makeTail();
jeep.make();
}
}
abstract class MakeCar {
// 抽象方法 - 具体细节
public abstract void makeHead();
public abstract void makeBody();
public abstract void makeTail();
/** 抽象公共步骤 - 模版方法 */
public void make() {
this.makeHead();
this.makeBody();
this.makeTail();
}
}
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: 组装车尾");
}
}
class MakeJeep extends MakeCar {
public void makeBody() {
System.out.println("jeep:组装车身");
}
public void makeHead() {
System.out.println("jeep:组装车头");
}
public void makeTail() {
System.out.println("jeep:组装车尾");
}
}
设计模式笔记_21_模版方法模式
最新推荐文章于 2024-10-10 22:44:55 发布