定义
对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
通俗讲,被观察者状态改变,观察者将得到通知,进行相应操作。
实现
以警察小偷为例
功能:小偷(被观察者)状态改变时通知所有警察(观察者)实行抓捕操作。【仅作事例,不考虑实际逻辑】
自定义观察者接口
public interface JingCha {
void zhuaBu();
}
自定义被观察者接口
public interface XiaoTou {
void regist(JingCha jingCha);
void delete(JingCha jingCha);
void notice();
}
观察者实现类
public class CJingCha implements JingCha{
@Override
public void zhuaBu() {
System.out.println("抓小偷");