一、定义:定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。Define a one -to - many dependency between objects so that when one object changes state , all its dependents are notified and updated automatically。
观察者模式在被观察者状态改变的时候,会通知所有的观察者进行更新。Java中通过继承abserable类来实现被观察者,观察者通过实现abservetor接口实现。
二、代码示例:
public class ToBeOb extends Observable { //被观察者 继承Observable类 下面会剖析其源码
public void doSomething() {
System.out.println("改变状态");
super.setChanged(); //设置被观察者改变状态
super.notifyObservers(); // 然后通知所有的观察者。
}
}
观察者类
public class Ob implements Observer {