程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 舉例講授Java設計形式編程中模板辦法形式的應用實例

舉例講授Java設計形式編程中模板辦法形式的應用實例

編輯:關於JAVA

舉例講授Java設計形式編程中模板辦法形式的應用實例。本站提示廣大學習愛好者:(舉例講授Java設計形式編程中模板辦法形式的應用實例)文章只能為提供參考,不一定能成為您想要的結果。以下是舉例講授Java設計形式編程中模板辦法形式的應用實例正文


模板辦法形式界說為:

在一個辦法中界說了一個算法的骨架或許步調,而將一些步調延遲到子類中去完成。模板辦法使得子類可以在不轉變算法構造的情形下,從新界說算法中的某一些步調。
模板辦法在基類中界說了一個操作的流程次序,可以或許包管該步調順次停止,有一些步調的詳細完成在基類中曾經聲明,而將一些變更的步調的詳細完成交給了子類去完成,從而就到達了延遲一些步調到子類中,模板辦法一個最年夜的利益就是可以或許設定一個營業流程可以或許依照必定嚴厲的次序履行,掌握了全部算法的履行步調。
這個辦法將算法界說成一組步調,個中但凡想讓子類停止自界說完成的步調,均界說為籠統辦法。籠統基類的特色是,普通將模板辦法設置為final,如許避免子類籠罩該算法的步調,將一些雷同的操作或步調直接在基類中完成,將一些變更的步調設置為籠統由子類去完成。

Java完成示例
類圖:

/** 
 * 營業流程模板,供給根本框架 
 */ 
public abstract class BaseTemplate { 
   
  public abstract void part1(); 
 
  public abstract void part2(); 
 
  public abstract void part3(); 
 
  //這裡為了嚴厲試驗成果,應用final弗成被重寫 
  public final void useTemplateMethod() { 
    part1(); 
    part2(); 
    part3(); 
  } 
} 

/** 
 * 模板完成方法1 
 */ 
public class TemplateMethod extends BaseTemplate { 
 
  @Override 
  public void part1() { 
    System.out.println("模板辦法1"); 
  } 
 
  @Override 
  public void part2() { 
    System.out.println("模板辦法2"); 
  } 
 
  @Override 
  public void part3() { 
    System.out.println("模板辦法3"); 
  } 
 
} 

/** 
 * 模板完成方法2 
 * @author stone 
 * 
 */ 
public class TemplateMethod2 extends BaseTemplate { 
 
  @Override 
  public void part1() { 
    System.out.println("模板辦法11"); 
  } 
 
  @Override 
  public void part2() { 
    System.out.println("模板辦法22"); 
  } 
 
  @Override 
  public void part3() { 
    System.out.println("模板辦法33"); 
  } 
   
} 

public class Test { 
  public static void main(String[] args) { 
    BaseTemplate tm = new TemplateMethod(); 
    tm.useTemplateMethod(); 
     
    System.out.println(""); 
     
    BaseTemplate tm2 = new TemplateMethod2(); 
    tm2.useTemplateMethod(); 
  } 
} 


打印:

模板辦法1 
模板辦法2 
模板辦法3 
 
模板辦法11 
模板辦法22 
模板辦法33 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved