設計模式2 模板模式 吃甜仍是吃鹹

 

一、什麼是模板模式ide

摸版通俗的意思就是用於複製,在代碼的世界中就是重用。想下若是一段代碼裏面有許多公用的代碼,可是又要適用與不一樣條件。你是否是還在不停的使用IF ELSE 呢?今天的模板模式會告訴你一種全新的解決方案。測試

二、南北湯圓,吃鹹仍是甜spa

煮湯圓的大體步驟 1煮開水,2下湯圓,3放糖仍是放鹽。咱們發現前2步是共用的,南北方的小夥伴都是這樣子作的。那麼第3放糖仍是放鹽,除了if else 咱們應該怎麼處理呢?模板

二、編寫父類abstractclass

public abstract class  TangYuan {
    private void boil(){

        System.out.println("水開了");
    }

    private void tangYuan(){
        System.out.println("放湯圓");
    }


    //控制下鹽仍是糖
    public void saltOrSugar(){
        System.out.println("放鹽");
    }

    //烹飪
    public void cook(){
        boil();
        tangYuan();
        saltOrSugar();
    }
}

三、編寫子類放糖static

public class SugarTangYuan  extends  TangYuan{
    @Override
    public  void saltOrSugar(){
        System.out.println("放糖");
    }

}

四、編寫子類放鹽解決方案

public class SaltTangYuan extends  TangYuan{
    @Override
    public  void saltOrSugar(){
        System.out.println("放鹽");
    }

}

五、編寫測試co

 

public class Test {

    public static void main(String[] args) {
        SaltTangYuan saltTangYuan =new SaltTangYuan();
        SugarTangYuan sugarTangYuan =new SugarTangYuan();
        saltTangYuan.cook();
        sugarTangYuan.cook();
    }
}

六、執行結果background

水開了
放湯圓
放鹽
水開了
放湯圓
放糖

 new

那麼2種不一樣的作法就作完了,要吃什麼味道的,就new什麼湯圓就能夠了。

相關文章
相關標籤/搜索