久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

觀察者(Observer)模式

 昵稱70680357 2020-06-30

名稱:

    觀察者模式(Observer Pattern)

 

問題:

     Observer pattern defines a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically. It is also referred to as the publish-subscribe pattern.    

 

解決方案:

    

1,、 模式的參與者

    1、Subject

    -目標知道它的觀察者,。可以有任意多個觀察者觀察同一個目標,。

    -提供注冊和刪除觀察者對象的接口,。

    2、Observer

    -為那些在目標發(fā)生改變時需獲得通知的對象定義一個更新接口,。

    3,、ConcreteSubject

    -將有關(guān)狀態(tài)存入各ConcreteObserver對象。

    -當它的狀態(tài)發(fā)生改變時,,向他的各觀察者發(fā)出通知,。

    4、ConcreteObserver

    -維護一個指向ConcreteSubject對象的引用,。

    -存儲有關(guān)狀態(tài),,這些狀態(tài)應與目標的狀態(tài)保持一致。

    -實現(xiàn)Observer的更新接口以使自身狀態(tài)與目標的狀態(tài)保持一致,。

 

2.實現(xiàn)方式

語言 方法
4970 mAV7dTmkFb
Z5sOy mcn機構(gòu)是什么意思
6433 2011.12.13 10-46-07
復制代碼
abstract class Subject
{
    protected List<Observer> observers=new ArrayList<Observer>();   

    public void add(Observer observer)
    {
        observers.add(observer);
    }    
   
    public void remove(Observer observer)
    {
        observers.remove(observer);
    }   
    public abstract void notifyObserver(); 
}
復制代碼
復制代碼
class ConcreteSubject extends Subject
{
    public void notifyObserver()
    {    
       
        for(Object obs:observers)
        {
            ((Observer)obs).response();
        }
       
    }          
}
復制代碼
interface Observer
{
    void response(); 
}
復制代碼
class ConcreteObserver1 implements Observer
{
    public void response()
    {
        System.out.println("Observer1 action");
    }
}
復制代碼
復制代碼
class ConcreteObserver2 implements Observer
{
    public void response()
    {
        System.out.println("Observer2 action");
    }
}
復制代碼

 

參考資料

《設計模式:可復用面向?qū)ο筌浖幕A(chǔ)》

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多