马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Samples、懂么 于 2014-12-17 12:49 编辑
最近有时间,讲点额外的知识给鱼油!
关于什么是java回调
回调就是指你调用我,我调用你,这种双向调用模式!简单说就是叫某个人做完某件事后再返回来告诉你,哦,做完了
如图:
假如我叫我的朋友或同学帮我去小卖部买包辣条,.然后我就可以先去做其他事情,等他买回来我就可以吃了
贴个代码:
首先定义个接口,这个接口的作用在于,我要做的动作public interface CallBack {
/**
* 执行回调方法
* @param objects 将处理后的结果作为参数返回给回调方法
*/
public void execute(String ... objects);
}
好,下面再定义我自己public class Me implements CallBack, Runnable {
private Friend remote;
/**
* 发送出去的消息
*/
private String message;
public Me(Friend remote, String message) {
<span style="line-height: 1.5;"> </span><span style="line-height: 1.5;"> </span><span style="line-height: 1.5;"> </span><span style="line-height: 1.5;">super();</span>
再定义一个朋友的类,我要叫他去买辣条public class Friend {
/**
* 处理消息
* @param msg 接收的消息
* @param callBack 回调函数处理类
*/
public void executeMessage(String msg, CallBack callBack) {
<span style="line-height: 1.5;"> </span><span style="line-height: 1.5;"> </span><span style="line-height: 1.5;">/** 模拟远程类正在处理其他事情,可能需要花费许多时间 **/</span>
下面测试一下public class Test {
public static void main(String[] args) {
<span style="line-height: 1.5;"> </span><span style="line-height: 1.5;"> </span><span style="line-height: 1.5;"> </span><span style="line-height: 1.5;">Friend friend = new Friend();</span>
|