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

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

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

    Sealyu

    --- 博客已遷移至: http://www.sealyu.com/blog

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      618 隨筆 :: 87 文章 :: 225 評論 :: 0 Trackbacks
    1.裝飾模式(Decorator):
    裝飾模式(Decorator)也叫包裝器模式(Wrapper)。GOF在《設計模式》一書中給出的定義為:動態地給一個對象添加一些額外的職責。就增加功能來說,Decorator模式相比生成子類更為靈活。
    裝飾模式的組成:

    1)        抽象構件角色(Component):定義一個抽象接口,以規范準備接收附加責任的對象。

    2)        具體構件角色(Concrete Component):這是被裝飾者,定義一個將要被裝飾增加功能的類。

    3)        裝飾角色(Decorator):持有一個構件對象的實例,并定義了抽象構件定義的接口。

    4)        具體裝飾角色(Concrete Decorator):負責給構件添加增加的功能。

    JAVAIO流的設計就大量運用了裝飾模式。看看我們熟悉的代碼:


    裝飾模式的特點;
    (1) 裝飾對象和真實對象有相同的接口。這樣客戶端對象就可以以和真實對象相同的方式和裝飾對象交互。
    (2) 裝飾對象包含一個真實對象的索引(reference)
    (3) 裝飾對象接受所有的來自客戶端的請求。它把這些請求轉發給真實的對象。
    (4) 裝飾對象可以在轉發這些請求以前或以后增加一些附加功能。這樣就確保了在運行時,不用修改給定對象的結構就可以在外部增加附加的功能。在面向對象的設計中,通常是通過繼續來實現對給定類的功能擴展。


    BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("..")));

    層層包裝,增強功能。這就是裝飾模式的要旨。


    posted on 2009-12-23 14:15 seal 閱讀(241) 評論(0)  編輯  收藏 所屬分類: 設計模式
    主站蜘蛛池模板: 无码A级毛片免费视频内谢| 在线观看特色大片免费网站| 日韩精品亚洲专区在线影视| 成人精品综合免费视频| 中文精品人人永久免费| 最近中文字幕免费2019| 99久久免费精品国产72精品九九| 国产在线19禁免费观看| 亚洲日韩精品一区二区三区 | 亚洲w码欧洲s码免费| 亚洲第一街区偷拍街拍| 一级特黄录像免费播放中文版| a国产成人免费视频| 国产成人精品免费视频大全麻豆| 午夜一区二区免费视频| 亚洲日本va中文字幕久久| 久久精品国产亚洲av麻豆图片| 免费精品国产自产拍在线观看| 花蝴蝶免费视频在线观看高清版| jjizz全部免费看片| 国产又大又粗又硬又长免费 | 亚洲va久久久噜噜噜久久| 亚洲午夜理论片在线观看| 黄色网页在线免费观看| 国产男女爽爽爽爽爽免费视频| 国产精品另类激情久久久免费| 亚洲精品乱码久久久久久久久久久久 | 亚洲 暴爽 AV人人爽日日碰| 新最免费影视大全在线播放| 在线看无码的免费网站| 免费人成视频在线观看不卡| 亚洲黑人嫩小videos| 曰批全过程免费视频免费看 | 免费看污成人午夜网站| 亚洲男人天堂2020| 亚洲乱码一区av春药高潮| 国产精品高清免费网站| 成年女人18级毛片毛片免费| 国产亚洲福利精品一区| 亚洲国产成人AV网站| 亚洲大片免费观看|