多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > <七>讀<<大話設計模式>>之模板模型

<七>讀<<大話設計模式>>之模板模型

來源:程序員人生   發布時間:2014-11-24 08:42:03 閱讀次數:2769次

 

       哈哈,真沒想到,不知不覺已寫到第7篇文章了,看來本人還是很有毅力的。其實堅持1件事很簡單,只要你每天不斷的朝著自己的目標動身,任何事情都不會擋著你。好了大道理不多說,誰都懂,那看看這個模板模式大家懂不懂了。

對模板模式可能聽起來很嚇人,其實大家都用過,只是不知道罷了,也很簡單。從字面意思上看就是我寫出1個模板,然后其他類直接繼承它就能夠具有模板類中的東西了,聽起來像繼承的定義,是的,就像現在開發1個論壇,為了能夠開發速度更快,我們通常就是網上找1個模板下載下來,然后在模板基礎上進行2次開發,道理1個樣。

      模板模型定義:定義1個操作中的算法的股價,而將1些步驟延遲到子類中。模板方法使得子類可以不改變1個算法的結構便可重定義該算法的某些特定步驟。

        <<大話設計模式>>對本章是以“小菜”http://www.vxbq.cn/cxyms/解答選擇題為故事展開的,意思是所有的選擇題都是1樣的,不1樣的就是答題者的答案而已,那末開發這個程序的變化點就是答案,不變的就是題目,那好我們將題目封裝到抽象類中,子類封裝答案便可,這就是模板模型。

空話不多說,照樣上代碼

1、模板抽象類,將子類共有的代碼封裝起來

publicabstractclass AbstratorClass {

 

    publicabstractvoid method1();

    publicabstractvoid method2();

    //模板方法,其實就是將公共的東西放到抽象類里面去了,即子類繼承1個共同的模板,減少代碼重合,增強復用

    publicvoid templateMethod(){

       method1();

       method2();

       System.out.println("我是模板");

    }

}

2、子類AB

publicclass ClassA extends AbstratorClass {

 

    @Override

    publicvoid method1() {

       // TODO Auto-generatedmethod stub

 

       System.out.println("我是類A的方法1");

    }

 

    @Override

    publicvoid method2() {

       // TODO Auto-generatedmethod stub

 

       System.out.println("我是類A的方法2");

    }

 

}

publicclass ClassB extends AbstratorClass {

 

    @Override

    publicvoid method1() {

       // TODO Auto-generatedmethod stub

 

       System.out.println("我是類B的方法1");

    }

 

    @Override

    publicvoid method2() {

       // TODO Auto-generatedmethod stub

 

       System.out.println("我是類B的方法2");

    }

 

}

3、客戶端調用

publicclass TemplateClient {

 

    /**

     * @param args

     */

    publicstaticvoid main(String[] args) {

       // TODO Auto-generatedmethod stub

 

       AbstratorClass class1 = new ClassA();

       class1.templateMethod();

       class1 = new ClassB();

       class1.templateMethod();

    }

 

}

 

其實關鍵代碼就1個地方,就是抽象類中封裝的模板方法,而子類中的方法就是自己的邏輯了,想怎樣寫都可以了與其他子類無關,唯1相同的就是模板中的邏輯了。

 

總結:模板方法模式是通過把不變行動搬移到超類,去除子類中的重復代碼來體現它的優勢。其實就是提供了1個很好的代碼復用平臺,由于有時候,我們會遇到由1系列步驟構成的進程需要履行。這個進程從高層次上看是相同的,但是步驟的實現可能不同。這時候候,模板方法模式該上場了………

 

附上代碼:http://download.csdn.net/detail/jzhf2012/8102387

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 午色| 韩国女主播一区二区三区视频 | 亚洲欧美视频在线观看 | 男人吃奶摸下面69视频免费 | 亚洲视频精品在线观看 | 亚洲国产第一页 | 国产精品欧美一区二区三区 | 欧美一区二区三区精品影视 | 久久综合欧美 | 欧美成人吃奶高清视频 | 欧美日韩久久毛片 | 欧美综合第一页 | 99久久中文字幕伊人 | 亚洲春色第一页 | 日本欧美一二三区色视频 | 亚洲欧美日本欧美在线播放污 | www.看片| 亚洲欧美久久精品一区 | 亚洲国产成人精彩精品 | 亚洲欧美日韩久久一区 | 欧美视频在线免费 | 精品日韩一区 | 欧美日韩亚洲区久久综合 | 久久精品a一国产成人免费网站 | 中文字幕亚洲视频 | 精品一区二区三区四区乱码 | 精品一区二区三区在线视频 | 精品一区二区三区中文 | 久久久久久久久久久9精品视频 | 国产精品福利在线观看秒播 | 国产成人高清视频 | 亚洲福利专区 | 与黑人女人做爰的真实感受 | 91情国产l精品国产亚洲区 | 日韩免费观看一级毛片看看 | 亚洲第一国产 | 亚洲精品亚洲人成在线 | 国产欧美一区二区久久 | 国产成人亚洲综合欧美一部 | 亚洲v日本 | 亚洲综合国产一区在线 |