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();

}

}

好了,简单理解,这就是回调

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值