模版方法設計模式學習筆記
阿新 • • 發佈:2018-08-12
延遲 void 修改 abstract 程序 print 模版方法 pla pre 概述:
模板方法模式就定義一算法的骨架,而具體的算法延遲到子類中來實現
優點缺點:
優點:使用模板方法模式,在定義算法骨架的同時,可以靈活的實現具體的算法,滿足用戶多變需求;
缺點:
如果算法骨架有修改,則需要修改抽象類
1、裝飾
2、單利
3、簡單工廠
4、工廠方法
5、適配器
6、模板
模板方法模式就定義一算法的骨架,而具體的算法延遲到子類中來實現
優點缺點:
優點:使用模板方法模式,在定義算法骨架的同時,可以靈活的實現具體的算法,滿足用戶多變需求;
缺點:
如果算法骨架有修改,則需要修改抽象類
1、裝飾
2、單利
3、簡單工廠
4、工廠方法
5、適配器
6、模板
public class Demo1_Template { /** * @param args */ public static void main(String[] args) { Demo d = new Demo(); System.out.println(d.getTime()); } } abstract class GetTime { public final long getTime() { //防止子類重寫 使用final long start = System.currentTimeMillis(); code(); long end = System.currentTimeMillis(); return end - start; } public abstract void code(); //目的讓子類重寫,方便計算程序運行時間 } class Demo extends GetTime { //代碼 @Override public void code() { int i = 0; while(i < 100000) { System.out.println("x"); i++; } } }
模版方法設計模式學習筆記