Observer模式UML类图

  • Subject(观察对象)
    该角色定义了注册,删除,和通知观察者的方法
  • ConcreteSubject(具体的观察对象)
    维护观察者集合,实现Subject角色定义的方法
  • Observer(观察者)
    接收来自Subject角色的状态变化的通知
  • ConcreteObserver(具体的观察者)
    实现了Observer接口

基本介绍

观察者模式:对象之间多对一依赖的一种设计方案,被依赖的对象为Subject,依赖的对象为Observer,Subject通知Observer变化,比如这里的奶站是Subject,是1的一方。用户时Observer,是多的一方。

观察者模式在Jdk应用的源码分析

观察者模式在Jdk应用的UML类图

具体应用

扮演Subject角色和ConcreteSubject角色的Observable类

Observable中的方法

扮演Observer角色的Observer接口

Observer模式在jdk应用的角色分析

  • Observable 的作用和地位等价于 我们前面讲过Subject
  • Observable 是类,不是接口,类中已经实现了核心的方法 ,即管理Observer的方法 add.. delete .. notify…
  • Observer 的作用和地位等价于我们前面讲过的 Observer, 有update
  • Observable 和 Observer 的使用方法和前面讲过的一样,只是Observable 是类,通过继承来实现观察者模式
最后修改日期:2020-07-13

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。