Java 试图建立一个简单的观察者

Java 试图建立一个简单的观察者,java,observable,observer-pattern,Java,Observable,Observer Pattern,我试图构建一个简单的Observable,当我调用notifyObservers()时,它不工作并继续。有人知道该怎么做 p类: import java.util.Observable; public class P extends Observable{ public void func(){ notifyObservers(); } } Ob类: import java.util.Observable; import java.util.Obse

我试图构建一个简单的Observable,当我调用
notifyObservers()时,它不工作并继续。有人知道该怎么做

p类:

import java.util.Observable;

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

}
Ob类:

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");
    }

}
运行:


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

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

 }

notifyobservators()
仅在可观察对象发生更改时才会执行任何操作,请参见如何在不更改的情况下跳过更新方法?如何在不更改的情况下跳过更新方法?
  public class P extends Observable{
   public void func(){
     hasChanged();
     notifyObservers();
   }

 }