码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式之观察者模式

时间:2016-05-11 14:54:40      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:

观察者模式

定义:定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。

类图:技术分享

多个[观察者]观察[被观察者]的状态,当[被观察者]的状态发生改变时,[观察者】自己的状态也随着发生变化。

被观察者有三个方法:attach方法是向这个容器中添加观察者对象;detach方法是从容器中移除观察者对象;notify方法是依次调用观察者对象的对应方法。

观察者模式是一种常用的触发机制,它形成一条触发链,依次对各个观察者的方法进行处理。

这里有一个好处是,被观察者不需要知道观察者的内容和有多少个观察者,只是在自己状态发生变化的时候通知订阅自己的观察者

补充:vector和list的区别

vector相当于数据结构中的顺序表,在物理地址上是连续的,查询速度快,可以直接下标索引,但是在删除插入数据的时候,后面的所有数据都要移动,效率较低

list是双向链表,物理地址不连续,必须从头或尾查询,速度慢,但是可以动态的插入删除数据

设计模式之观察者模式

标签:

原文地址:http://www.cnblogs.com/sker/p/5481598.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!