日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php框架 > 框架設計 > 設計模式思考----觀察者模式

設計模式思考----觀察者模式

來源:程序員人生   發布時間:2015-06-15 07:58:20 閱讀次數:3417次

    視察者模式定義對象間的1種1對多的依賴關系,當1個對象的狀態產生改變的時候,所有依賴于它的對象都得到通知并被自動更新。

    視察者類圖:

Subject(被視察者)
                 被視察的對象。當需要被視察的狀態產生變化時,需要通知隊列中所有視察者對象。
Subject需要保持(添加,刪除,通知)1個視察者對象的隊列列表。

ConcreteSubject
       
被視察者的具體實現。包括1些基本的屬性狀態及其他操作。

Observer(視察者)
      接口或抽象類。當
Subject的狀態產生變化時,Observer對象將通過1個callback函數得到通知。

ConcreteObserver
                 
視察者的具體實現。得到通知后將完成1些具體的業務邏輯處理。

        1.目標和視察者之間的關系:依照模式定義,目標和視察者直接是典型的1對多關系,但是如果視察者只有1個也是可以的。在處理1個對象的狀態變化會影響到另外一個對象的時候也能夠斟酌使用此模式。

        2.單向依賴:在視察者模式中,視察者和目標是單向依賴的,只有視察者依賴目標,而目標是不會依賴于視察者的。它們之間的主動權掌握在目標手中。

        3.實現:具體的目標實現對象要能保護視察者的注冊信息,最簡單的是采取1個機會來保存視察者的注冊信息。 如果是1個視察者視察多個目標,那末在視察者的更新方法里面,需要判斷是來自哪個目標的通知。簡單的做法就是擴大update的方法。比如在方法里面多傳遞1個參數進行辨別,還有種更簡單的方法就是定義不同的回調方法。

Java中的視察者模式

       在java.util包里面有1個類Observable,它實現了大部份我們需要的目標的功能,還有1個接口Observer,它里面定義了update的方法,就是視察者的接口。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 不卡精品视频 | 国产天堂av | 91精品国产人妻国产毛片在线 | 精久久久 | 天天综合网91 | 精品伦精品一区二区三区视频 | 麻豆一区二区三区 | 99久久精品一区二区成人 | 九九九久久国产免费 | 成人伊人网 | 国产成人在线视频 | 亚洲品质自拍视频网站 | 国产精品国产精品国产专区不片 | 日韩精选视频 | 伊人亚洲影院 | 最新精品在线 | 日本黄色电影网站 | 国产九九热| 一区二区三区在线视频播放 | 日批av| 一级免费片 | 国产精品久久久久久久久久小说 | 精品久久久99 | 欧美二三区 | 欧美日韩在线综合 | 亚洲免费中文字幕 | 精品2区 | 精品一区二区在线播放 | 91视频在线观看网 | 日本在线视频一区 | 成人av福利 | 国产麻豆乱码精品一区二区三区 | 成年人视频免费在线观看 | 老妇毛片 | 日韩视频91 | 国产在线精品一区 | 久久精品9 | a视频在线观看免费 | 亚洲国产成人精品久久 | 欧美激情视频一区二区三区在线播放 | 国户精品久久久久久久久久久不卡 |