【发布时间】:2012-10-17 11:06:23
【问题描述】:
从技术上讲,使用以下代码将Class 定义为Observable 和Observer 似乎是可以的:
public class Data extends Observable implements Observer
但是,尝试实现它,它不起作用。
public class Data extends Observable implements Observer {
@Override
public void update(Observable o, Object o1) {
System.out.println("SC");
}
Integer A;
String B;
Float C;
public Data() {
this.addObserver(this);
}
public void setA(Integer A) {
this.A = A;
notifyObservers();
}
public void setB(String B) {
this.B = B;
notifyObservers();
}
public void setC(Float C) {
this.C = C;
notifyObservers(this.C);
}
}
main 函数如下:
public static void main(String[] args) {
Data d = new Data();
d.setA(5);
d.setB("Hi");
d.setC(2.0f);
}
它应该打印一些“SC”,但它不工作。谁能描述一下原因?
【问题讨论】:
标签: java design-patterns observer-pattern