1、简介
1、意图
定义对象间的一种一对多的关系,当一个对象改变时,其他依赖它的对象都要得到通知并进行更新,例如:将一份数据用不同的方式(表格,条形图等)表现出来,将一个时间值用不同的方式(数字时钟,针式时钟等)表现等。
2、使用性
a.当一个对象改变时需要改变其他对象,而不知有多少对象需要改变。
b.当一个对象需要通知其他对象,而又不知其他对象具体是谁时,一般这些对象都会提供一个通用的接口。
2、实例
在android的各种Adapter中会使用这种模式,即当一份数据源发生变化时,需要通知上层使用这份数据源的控件进行相应的更新,在这个实例中此模式会与Adapter模式交织在一起,只需关注蓝色线内部分即可,具体更新内容部分在各具体AdapterDataSetObserver的onChanged()中实现。当然由于这部分涉及源码比较多,故只贴一个图片,具体要看源码哦。