观察者模式在实际用的多吗
答案:1 悬赏:50
解决时间 2021-02-23 04:25
- 提问者网友:溺爱和你
- 2021-02-22 21:12
观察者模式在实际用的多吗
最佳答案
- 二级知识专家网友:迟山
- 2021-02-22 21:23
观察者模式用的太多了。
分类: java设计模式
一.观察者模式的定义
定义对象间一种一对多的依赖关系,是的没当一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。
二.观察者模式的使用场景
(1).关联行为场景,需要注意的是,关联行为是可拆分的,而不是“组合”关系
(2).事件多级触发场景
(3).跨系统的消息交换场景,如消息队列,事件总线的处理机制。
三.观察者模式的UML类图
角色介绍:
subject:抽象主题(Observer),也就是被观察observable的角色,抽象主题角色把所有观察者对象的引用保存在一个集合里,每个主题都可以有任意数量的观察者,抽象主题提供一个接口,可以增加或删除观察者对象。
concreteSubject:具体主题(ConcreteObservable),该角色将有关状态存入具体观察对象,在具体主题的内部状态发生改变时,给所有注册过的观察者发出通知,具体主题角色又叫具体被观察这(ConcreteObservable)角色
observale:抽象观察者,该角色是观察者的抽象类,它定义了更新接口,使得在得到主题的更改通知时更新自己。
ConcreteObserver:具体的观察者,该角色实现抽象观察者角色所定义的更新接口,以便在主题的状态发生变化时更新自身的状态。
分类: java设计模式
一.观察者模式的定义
定义对象间一种一对多的依赖关系,是的没当一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。
二.观察者模式的使用场景
(1).关联行为场景,需要注意的是,关联行为是可拆分的,而不是“组合”关系
(2).事件多级触发场景
(3).跨系统的消息交换场景,如消息队列,事件总线的处理机制。
三.观察者模式的UML类图
角色介绍:
subject:抽象主题(Observer),也就是被观察observable的角色,抽象主题角色把所有观察者对象的引用保存在一个集合里,每个主题都可以有任意数量的观察者,抽象主题提供一个接口,可以增加或删除观察者对象。
concreteSubject:具体主题(ConcreteObservable),该角色将有关状态存入具体观察对象,在具体主题的内部状态发生改变时,给所有注册过的观察者发出通知,具体主题角色又叫具体被观察这(ConcreteObservable)角色
observale:抽象观察者,该角色是观察者的抽象类,它定义了更新接口,使得在得到主题的更改通知时更新自己。
ConcreteObserver:具体的观察者,该角色实现抽象观察者角色所定义的更新接口,以便在主题的状态发生变化时更新自身的状态。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯