位置: 编程技术 - 正文
推荐整理分享设计模式In Android——观察者(Observer)模式_1(设计模式具有的优点),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:设计模式有哪些,设计模式面试题 java,设计模式七大原则,设计模式原则,设计模式原则,设计模式七大原则,设计模式23模式介绍,设计模式六大原则,内容如对您有帮助,希望把文章链接给更多的朋友!
写在前面的话: 1,记录学习的过程,希望能够坚持下去。 2,代码Based On Android4.4;主要参考书籍《Head First 设计模式》
什么是观察者模式? 定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。
怎么设计一个观察者模式的程序? 确定两个核心对象:(《Head First》Chapter 2) a.主题(Subject.java,WeatherData.java):要实现register()/unregister(),notify()方法 b.观察者(Observer.java,CurrentConditionDisplay.java/StatisticsDisplay.java):要实现update()方法
确定这两个对象之间的关系: 主题对象管理某些数据,一旦数据发生改变,会主动向观察者进行通知,然而观察者不必向主题进行索取。 主题并不知道具体的观察者是谁,这是它们之间的关系。
原则
观察者模式是体现了“针对接口编程,而非针对实现编译”; 所以针对接口编译,我认为是把接口(Subject)或者接口的实现(WeatherData)作为参数,如public CurrentConditionsDisplayer(Subject weatherData)使用观察者模式的布告板可以动态的添加(register)。为了交互对象之间的松耦合设计而努力静态类图
代码实现 在测试类中,实例化一个WeatherData
在CurrentConditionsDisplayer的构造方法中,会调用WeatcherData.registerObserver方法,把已经注册进去。 在WeatherData.java实现registerObserver方法,就是把
在进行数据传递的方法notify()方法中,会遍历ArraryList逐个调用update()方法通知。 WeatherData.java
CurrentConditionsDisplayer.java中去显示
代码下载:代码
下节学习一下在Android里面,哪里使用Observer模式。
点击LinearLayout使用selector改变TextView字体颜色 LinearLayoutandroid:clickable=trueandroid:focusable=trueTextViewandroid:duplicateParentState=true/android:textColor=@drawable/selector_setting_txt/LinearLayout?xmlversion=1.0encoding=utf-8?selectorxml
android图表ichartjs android之ichartjs图表1.
JDK/ADT Android开发环境搭建 1.1JDK环境搭建安装Windows7(如果已有,可以跳过)去
标签: 设计模式具有的优点
本文链接地址:https://www.jiuchutong.com/biancheng/381093.html 转载请保留说明!上一篇:android内存泄露优化总结(android内存泄露监测)
下一篇:点击LinearLayout使用selector改变TextView字体颜色(linearlayout布局怎么设置)
友情链接: 武汉网站建设