一句话概述
观察者模式是软件设计模式的一种。在此种模式中,一个目标对象管理所有相依于它的观察者对象,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实时事件处理系统。
实现一个观察者模式
1.实现一个被观察对象
import java.util.Observable;
public class ObervableImp extends Observable{
public synchronized void setChanged() {
super.setChanged();
};
}
2.实现一个观察者对象
import java.util.Observable;
import java.util.Observer;
public class ObserverImp implements Observer {
private String mName;
public ObserverImp(String name) {
mName = name;
}
@Override
public void update(Observable o, Object arg) {
System.out.println(mName+","+arg);
}
public static void main(String[] args) {
ObervableImp observableImp=new ObervableImp();
observableImp.addObserver(new ObserverImp("xiaoMing"));
observableImp.addObserver(new ObserverImp("xiaoHong"));
observableImp.setChanged();
observableImp.notifyObservers("您有新的消息");
}
}
3.运行结果
观察者模式很简单,以上就足够了。