如何理解java中的回调
2014-10-16 09:38
309 查看
以android中的Button的setOnClickListener这个回调为例;
那么我们如何实现呢;
首先定义OnClickListener接口
再定义Button按钮这个类
最后编写一个测试类
好了,简单理解,这就是回调
Button button = (Button)this.findViewById(R.id.button); button.setOnClickListener(new Button.OnClickListener() { //回调函数 @override publicvoid onClick(View v) { buttonTextView.setText("按钮被点击了"); } });
那么我们如何实现呢;
首先定义OnClickListener接口
package com.listener; /** * 点击监听器接口 * @author CodingMyWorld * */ publicinterface MyOnClickListener { publicvoid onClick(); }
再定义Button按钮这个类
package com.listener; publicclass MyButton { private MyOnClickListener listener; /** * 设置具体点击监听器 * @param listener 点击监听器实现类 */ publicvoid setOnClickListener(MyOnClickListener listener) { this.listener = listener; } /** * 按钮被点击 */ publicvoid doClick() { listener.onClick(); } }
最后编写一个测试类
package com.listener; publicclass Client { publicstaticvoid main(String[] args) { MyButton button =new MyButton(); //注册监听器 button.setOnClickListener(new MyOnClickListener() { @Override publicvoid onClick() { System.out.println("按钮被点击了"); } }); //模拟用户点击 button.doClick(); } }
好了,简单理解,这就是回调
相关文章推荐
- Java回调机制如何理解?
- 如何理解java中回调机制和模板机制
- 如何快速理解其他人写的Java代码
- 如何理解JAVA 参数传递总是值传递(pass-by-value )
- JAVA 内存详解 (理解 JVM 如何使用 Windows 和 Linux 上的本机内存)
- Java与编码问题串讲之二--如何理解java采用Unicode编码
- 理解Java中的回调
- 如何理解JAVA中的流概念
- 如何理解java的有符号数
- Java 中如何理解数组
- 如何理解Java中的隐藏与覆盖
- 如何理解 Java 的跨平台特性?
- 如何理解Java的抽象类 推荐
- Java如何理解接口,写得好!
- 如何理解JavaScript、Java、Jsp、J2ee之间的关系与区别
- 如何理解JavaScript、Java、Jsp、J2ee之间的关系与区别
- 理解java中的回调方法
- java的回调函数理解
- java多态,如何理解父类引用指向子类对象
- 如何理解java中的堆内存和栈内存