設計模式之模板方法設計模式

什麼是模板方法模式

父類抽象出子類共有的方法,子類實現各自不同的業務。

總之就是一種行爲有他們共同的方法,只是他們具體的實現不一樣。比如開車這種行爲模式,啓動-->換擋-->踩油門。每種型號品牌的車都有共同的行爲,但是不同型號品牌的車的實現方式可能不同,需要每個品牌型號的車自己實現這些功能。這樣的定義上面行爲的模式,稱之爲模板方法設計模式。

定義模板

public abstract class AbstractCar {
    // 啓動
    public abstract void star();
    // 換擋
    public abstract void shift();
    // 踩油門
    public abstract void stepGas();

    public void runCar(){
        star();
        shift();
        stepGas();
    }

}

 子類實現

public class BMWCar extends AbstractCar {

    @Override
    protected void star() {
        System.out.println("寶馬一鍵啓動");
    }

    @Override
    protected void shift() {
        System.out.println("寶馬換擋");
    }

    @Override
    protected void stepGas() {
        System.out.println("寶馬踩油門");
    }

}

。。。其他車輛實現

 

啓動車輛

AbstractCar car = new BMWCar();
car.runCar();

總結

模板方法設計模式最核心的是一組行爲裏面有着共同的行爲,但是他們的具體實現不同。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章