观察者模式也称”发布-订阅”模式,它的作用就是当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知,自动刷新对象状态
举个生活比较常见常见的例子,比如你去面试之后,面试官看你表现不错,最后会跟你要联系方式,以便之后可以联系你。在这角色扮演当中,你就是“订阅者”,面试官就是“发布者”。
那么发布订阅模式是咋实现的呢?
思路
- 给定一个发布者
- 面试者将联系方式给发布者
- 发布者的一个列表有各种职位(web端的,java 的),里面记载回调函数以便通知这些面试者
- 最后发布消息的时候,会遍历这个列表的职位的回调函数,告诉面试者面试这个职位是通过还是不通过
- 如果面试者取消了订阅,那么将回调函数和之前的回调函数作对比,如果相等,就将这个面试者的上班通知去掉
|
|
测试:
|
|
