簡體   English   中英

多觀察者和多觀察者

[英]Multiple Observer and Multiple Observable

我正在使用JAVA中的Observable類/觀察器接口來實現觀察者模式。 如果我有一個對象,我希望能夠觀察其他幾個可觀察對象(多個可觀察對象)並具有多個觀察者(多個觀察者)

問題在類B中不是anobservable的,但我想在A和B中賦值以生成圖表

public void update(Observable anObservable, Object anObject) {
    if(anObservable instanceof A){
        createDataSet(anObservable,null);
    }
    else if(anObservable instanceof B)
    {
        createDataSet(null,anObservable);
    }       
}
private  void (Observable anSampleObservable,Observable anAreaObservable){
// To do something with value in anSampleObservable (A) and value in anAreaObservable(B)}

有什么建議嗎? 謝謝。

通過將傳遞的對象作為對象的Collection ,可以實現多個可觀察對象。

您還可以輕松地擁有多個觀察者或可觀察對象。 考慮以下示例:

class Model1 extends Observable {}
class Model2 extends Observable {}

class Controller1 implements Observer {
    public void update(Observable o, Object object) {}
}    

class Controller2 implements Observer {
    public void update(Observable o, Object object) {}
}

可以使用以下方法將其連接在一起:

Model1 model1 = new Model1();
Model2 model2 = new Model2();
model1.addObserver(new Controller1());
model2.addObserver(new Controller2());

應該工作正常。 只需將該單一視圖/觀察者添加到您要觀察的所有模型/可觀察對象中即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM