出于某种原因,当我使用java.util.Observable对象调用notifyObserver方法时,我的观察者没有得到通知:
这是我的可观察对象:
public class ProjectManager extends Observable
{
...
public void updateProjects(String project, String pack, String source, String ARN)
{
...
if(newSource)
{
tempPack.add(tempSource);
System.out.println("Notify observers: " + this.countObservers());
this.notifyObservers();
}
...
}
我可以从输出中看到观察者正在被添加但没有得到通知。
我的观察者对象如下所示:
public class IDE implements Observer
{
@Override
public void update(Observable o, Object arg) {
System.out.println("Notified");
}
由于一些奇怪的原因,可观察对象根本没有得到通知。我在这里做错了吗?
答案 0 :(得分:14)
在setChanged
notifyObservers