尝试构建一个简单的观察者可观察性



我正在尝试构建一个简单的观察者可观察性,当我调用notifyObservers();时,它不起作用并继续存在。 有人知道该怎么做吗?

P类:

import java.util.Observable;
public class P extends Observable{
   public void func(){
       notifyObservers();       
   }
}

鄂毕类:

import java.util.Observable;
import java.util.Observer;
public class Ob implements Observer{
    P p;
    public Ob(P p) {
        this.p=p;
    }
    public void run(){
        p.func();
    }
    @Override
    public void update(Observable o, Object arg) {
        System.out.println("SUceesssed");
    }
}

跑:

public class run {
    public static void main(String[] args) {
    P p=new P();
        Ob o=new Ob(p);
        p.addObserver(o);
        o.run();
    }
}

在通知观察者之前,您必须调用hasChanged()

  public class P extends Observable{
   public void func(){
     hasChanged();
     notifyObservers();
   }
 }

最新更新