【設計模式】## 2、模板模式##

2、模板模式

模板模式 :解決某類事情的步驟有些是固定的,有些是會發生變化的,那麼這時候我們可以爲這類事情提供一個模板代碼,從而提高效率 。

所以思想是:
①將模板的部分代碼修飾成public final,防止別人修改你的模板,又可以使用你的模板。

②將會發生變化的部分抽取出來,形成一個方法,並修飾成abstract,讓別人去重寫。

③ 將這個模板形成一個類, 別人要調用模板的時候就自己創建一個類繼承這個模板類,重寫需要改變的方法即可。然後創建這個類的對象調用相應的模板方法就可以執行模板了

abstract class MyRuntime{

    public final void getTime(){
        long startTime = System.currentTimeMillis();    //記錄開始的時間
        code();    //模板中調用可能發生變化的方法
        long endTime = System.currentTimeMillis();  //記錄結束的時間.
        System.out.println("運行時間 :"+ (endTime-startTime));
    }

    public abstract void code();  //方法抽象出來
}




class Demo11 extends MyRuntime
{
    public static void main(String[] args) 
    {
        Demo11 d = new Demo11();
        d.getTime();
    }



    //code方法內部就寫要計算運行時間 的代碼;
    public  void code(){
        int i = 0;
        while(i<100){
            System.out.println("i="+i);
            i++;
        }

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