5

由于某种原因,当我使用 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");

}

由于某种奇怪的原因,可观察对象根本没有被通知。我在这里做错了吗?

4

1 回答 1

15

你需要setChanged在你之前notifyObservers

于 2012-07-03T16:44:32.300 回答