1. 程式人生 > 其它 >模板設計模式

模板設計模式

抽象類體現的就是一種模板模式的設計,抽象類作為多個子類的通用模板,子類在抽象類的基礎上擴充套件、改造,但子類總體上會保留抽象類的行為方式

解決的問題:

  >當功能內部一部分實現是確定的,一部分實現是不確定的。這時可以把不確定的部分暴露出去,讓子類去實現

  >換句話說,在軟體開發中實現一個演算法時,整體步驟很固定、通用,這些步驟在父類中寫好。但是某些部分易變,易變部分可以抽象出來,供不同子類去實現。這就是一種模板模式。

 1 public class TemplateTest {
 2     public static void main(String[] args) {
3 SubTemplate t = new SubTemplate(); 4 t.spendTime(); 5 } 6 7 } 8 9 abstract class Template{ 10 11 //計算某段程式碼執行所需要的時間 12 public void spendTime(){ 13 long start = System.currentTimeMillis(); 14 code(); 15 long end = System.currentTimeMillis();
16 System.out.println("花費的時間為:" + (end - start)); 17 } 18 19 public abstract void code(); 20 } 21 22 class SubTemplate extends Template{ 23 24 public void code(){ 25 int sum = 0; 26 for(int i = 2; i <= 1000; ++i){ 27 sum += i; 28 } 29 } 30 }