首页 > 代码库 > 如何理解java中的回调
如何理解java中的回调
以android中的Button的setOnClickListener这个回调为例;
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中的回调
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。