日韩亚洲欧美在线com|日本xxxx色视频在线播放|国产熟妇与子伦hd|欧美freesex黑人又粗又大|国产欧美日韩一区二区三区

剛開始編程時,沒有經驗,往往在一個方法里把所有的功能實現。
比如一個打印報表的模塊,在實現時:

public class printReport
{
  public void print(){
    //打印表頭
   //打印正文
    //打印表尾
  }
}

這樣客戶端調用的時候,直接new printReport()對象,然后調用print方法。現在看起來沒什么問題,可是需求變化時,就麻煩了。

比如客戶打印表頭要改一下,怎么辦,改原來的類?那如果客戶又覺的原來的格式好要換回原來的表頭呢?這時候恐怕就要郁悶了。那怎么辦呢?仔細分析發現打印次序是不變的,客戶具體的打印內容是經常變化的,這樣我們改造一下類:

public abstract class printReport
{ //定義一個抽象類
  public void print(){
    printHeader(); //打印抬頭
    printBody();  //打印正文
    printFooter(); //打印表尾
  }
 
  public abstract void printHeader();
  public abstract void printBody();
  public abstract void printFooter();
}

這個框架就是把打印的3個方法固定了,但是沒有具體的打印實現,因為客戶的要求會變,所以這里將可變的部分抽離,留給子類去實現。

比如客戶A的打印是這樣的


public class printClientAReport:printReport //繼承
{
 
  public  void printHeader()
  {
      console.writeln("客戶A的抬頭打印");
  }
  public  void printBody()
  {
      console.writeln("客戶A的正文打印");   
  }
  public  void printFooter()
  {
      console.writeln("客戶A的表尾打印");   
  }
}

這樣在客戶代碼
printClientAReport p=new printClientAReport();
p.print();

客戶b的不一樣
public class printClientBReport:printReport //繼承
{
 
  public  void printHeader()
  {
      console.writeln("客戶B的抬頭打印");
  }
  public  void printBody()
  {
      console.writeln("客戶B的正文打印");   
  }
  public  void printFooter()
  {
      console.writeln("客戶B的表尾打印");   
  }
}

客戶B的打印
printClientBReport p=new printClientBReport();
p.print();
這其實就是最簡單的模板模式。

======================================================
在實際的打印文檔項目中,有一個打印處理模塊,應用了模板設計模式。

 

1,定義一個打印文檔處理抽象類,里面BuildNewSql() 和 Process()實現了具體的流程。

2,Word的打印文檔處理。

3,Excel的打印文檔處理


 

在具體業務處理時:

excel處理

 ExcelProcess xls = new ExcelProcess(u,v,w,x,y);
 xls.initProcess();
 xls.Save(newname);

word處理

 WordProcess wp = new WordProcess(u,v,w,x,y);
 wp.initProcess();
 wp.Save(newname);

 

 

主站蜘蛛池模板: 午夜肉伦伦影院| 国产成人欧美视频在线观看| 日韩女同视频一区二区| 国产午夜精品一区二区三区糖心| 国产免费久久久久久无码| 视频免费观看一区| 一本加勒比hezyo无码人妻| 日木强大喷奶水av片| 久久99国产精品久久99果冻传媒| 成人国产一区视频| 久久久精品国产sm调教网站| 国产自产v一区二区三区c| 国产精品_九九99久久精品| 国产激情内射在线影院| 天堂а√在线最新版中文在线| 欧美日本视频一区在线视频| 素人91麻豆亚洲一区| 一本久道久久综合狠狠爱| 熟妇高潮一区二区三区在线播放 | 无码日韩人妻精品久久蜜桃| 成人欧美精品一区二区电影| 无码久久久久不卡网站| 亚洲日韩成人无码| 中文人妻av一区二区| 波多野美乳人妻hd电影欧美 | 无码人妻少妇久久中文字幕蜜桃 | 精品国产自在现线看久久| 祥仔av免费一区二区三区四区| 国产亚洲欧洲综合5388| 国产在线一区二区香蕉 在线| 国产精自产拍久久久久久蜜| 久久99精品久久久久久水蜜桃| 亚洲中文字幕av无码区| 午夜dj在线观看免费视频| 狠狠色综合网久久久久久| 国产成人精品999在线观看| 国产精品高潮呻吟av久久黄| 欧美日韩国产的视频yw885| 国产剧情av麻豆香蕉精品| 中文字幕在线观看亚洲视频 | 村上凉子一区二区三区|