展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

观察者模式在Jdk应用

  • 查看
@Deprecated(since="9")
public class Observable {
    private boolean changed = false;
    private Vector<Observer> obs;   // 集合

# 查看接口
@Deprecated(since="9")
public interface Observer {
    /**
     * This method is called whenever the observed object is changed. An
     * application calls an {@code Observable} object's
     * {@code notifyObservers} method to have all the object's
     * observers notified of the change.
     *
     * @param   o     the observable object.
     * @param   arg   an argument passed to the {@code notifyObservers}
     *                 method.
     */
    void update(Observable o, Object arg);
}
  • alt + 7 查看方法

  • 角色分析

Observable 的作用和地位等价于 我们前面讲过Subject
Observable 是类,不是接口,类中已经实现了核心的方法 ,即管理Observer的方法 add.. delete .. notify... 
Observer 的作用和地位等价于我们前面讲过的 Observer, 有update
Observable 和 Observer 的使用方法和前面讲过的一样,只是Observable 是类,通过继承来实现观察者模式
posted @ 2022-09-01 10:22  DogLeftover  阅读(14)  评论(0编辑  收藏  举报