<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    裝飾模式(Decorator)簡(jiǎn)單示例

    @import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);

    經(jīng)常在別人的代碼里看見(jiàn) XWrapper,YWrapper,ZWrapper, 原來(lái)這種編程的策略就是裝飾模式。裝飾模式的類圖如下:






     1
     2//Component
     3interface IDataRetriever{
     4    String getData();
     5}

     6//Concrete Component
     7class DataRetriever implements IDataRetriever{
     8    String getData(){
     9        return "Retrieve Data.";
    10    }

    11}

    12//Abstract Decorator
    13abstract class AbstractDataRetriever implements IDataRetriever{
    14    protected IDataRetriever retriever;
    15    public AbstractDataRetriever(IDataRetriever retriever){
    16        this.retriever = retriever;
    17    }

    18}

    19//Concrete Decorator
    20class DataRetrieverWrapper extends AbstractDataRetriever{
    21    DataRetrieverWrapper(IDataRetriever retriever){
    22        super(retriever);
    23    }

    24    String getData(){
    25        println "processing data";
    26        this.retriever.getData();
    27    }

    28}

    29
    30def retriever = new DataRetriever();
    31def wrapper = new DataRetrieverWrapper(retriever);
    32wrapper.getData();
    33
    34
    35class DatabaseRetriever implements IDataRetriever{
    36    String getData(){
    37        return "Retrieve Data from Database";
    38   }

    39}

    40
    41
    42wrapper = new DataRetrieverWrapper(new DatabaseRetriever());
    43wrapper.getData();
    44
    45


    Kyle Wang

    posted on 2012-02-23 22:50 王樹(shù)東 閱讀(205) 評(píng)論(0)  編輯  收藏 所屬分類: Design Pattern Learning and Sharing


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    常用鏈接

    留言簿

    隨筆分類(17)

    隨筆檔案(15)

    文章分類(4)

    文章檔案(5)

    收藏夾(4)

    Algorithm

    Design

    Environment Setup

    Installer

    Maven

    MINA

    OS

    Skills for Java

    VIM

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 91av免费观看| 亚洲国产成人久久综合野外| 亚洲无码一区二区三区| 免费国产成人午夜电影| 在线观看免费播放av片| 在线aⅴ亚洲中文字幕| 国产综合精品久久亚洲| 和日本免费不卡在线v| 一级a性色生活片久久无少妇一级婬片免费放 | 亚洲AV午夜成人影院老师机影院| 又大又硬又爽又粗又快的视频免费| 亚洲风情亚Aⅴ在线发布| 亚洲国产精品一区二区久久hs | 亚洲国产成人精品久久久国产成人一区二区三区综 | 99久久成人国产精品免费| 亚洲人成77777在线播放网站不卡| 国产偷国产偷亚洲高清日韩| 97人妻无码一区二区精品免费| 黄网站色成年片大免费高清| 亚洲福利一区二区三区| 亚洲日本在线观看视频| 在线观看免费为成年视频| 精品免费tv久久久久久久| 色偷偷亚洲第一综合| 国产麻豆一精品一AV一免费| 亚洲精品人成网在线播放影院| 亚洲国产精品无码成人片久久| 国产精品二区三区免费播放心| 91短视频在线免费观看| www.xxxx.com日本免费| 亚洲AV无码专区在线电影成人| 亚洲经典在线观看| 亚洲精品无码精品mV在线观看| 永久在线毛片免费观看| 一级女人18毛片免费| 免费国产黄网站在线观看视频| 国产精品九九久久免费视频 | 不卡精品国产_亚洲人成在线| 在线观看成人免费| 国产精品久久久久久久久免费| a级毛片在线免费看|