android设计模式之observer
来源:互联网 发布:minitool数据恢复工具 编辑:程序博客网 时间:2024/06/05 22:51
今天我们谈谈android中的observer模式,看了一下网上的代码,感觉不是很好理解,我还是引入高焕堂老师的EIT模式来说,同时我结合android中的为button设置监听来讨论这个问题,我先大概讲讲理论,然后在下面会以一个简单的代码来表现。
高老师的EIT模型中E和I是对应不变的,就像我们的button按钮是不变的,而变得只是button按钮以后处理事件,T也就是我们说的监听事件,在高老师来看是需要变得。同时监听事件是需要实现I接口的,这是我们连接变和不变的桥梁。高老师的E代表的是引擎,T代表的是轮胎,也就是引擎一旦上上去就不怎么会改变,但是轮胎会经常改变,I代表的是引擎和轮胎之间的接口,当我们把轮胎和接口连接在一起以后,我们就 可以愉快的玩耍了。ok,理论就讲到这个地方,下面是我模拟的一个button的监听实现的代码,
public class Test {/** * * @author jk */public static void main(String[] args) {// 初始化一个buttonButton btn = new Button();// 设置一个监听的事件btn.setOnClickListener(new MyListener());// 通过btn.callonclick调用传入的MyListener对象的onclick方法btn.callonclick();}}// 定义一个接口interface IMyInterface {void onclick();}// 实现IMyInterface接口class MyListener implements IMyInterface {// 实现mListerer方法public void onclick() {System.out.println("ni hao ");}}class Button {// 设置接口对象IMyInterface myInterface;public void callonclick() {// 调用子类对象的方法myInterface.onclick();}public void setOnClickListener(IMyInterface myInterface) {// 父类引用指向子类对象,这里传递的一般是一个子类对象this.myInterface = myInterface;}}
有人说,这不就是回调吗?虽然我知道这个和大多数人说的回调几乎是一样的,但是,我真的不能理解回调。。。伤感
0 0
- android设计模式之observer
- Android设计模式之观察者模式 Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之--Observer
- 设计模式之--Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- 设计模式之Observer
- CAS Ticket
- Android Parcelable与Java Serializable
- C++11 之for 新解
- Mac OS X 架设基于 SSH 的 Git 服务
- maven标签解析
- android设计模式之observer
- 线性表——链表
- C 冒泡排序原理示范
- JavaScript函数的参数设置默认值
- Android群英传--绘图机制和处理技巧(二)
- 关于分页写法的性能分析及ROWNUM的补充说明
- spring mvc中的@propertysource
- ORA-28000: the account is locked
- struts1工作流程