回调就是就调用方在调用被调用方时留给对方一个小尾巴,在被调方须要的时候经过这个小尾巴把消息通知给调用方ide
实现例子以下,一如既往设计一个顶层接口
/**测试
*/
public interface CallBack {this
public void callback(Object object);设计
}code
调用对象
package callback;对象
/**blog
*/
public class BusARequest implements CallBack {接口
public void execute() {
//调用被调方
BusResponse rep = new BusResponse();
//将本身同时传给被调用方
rep.call(this, 1);
}get
@Override
//实现的回调方法
public void callback(Object object) {
getResult((int)object);
}it
public int getResult(int para) {
System.out.println("参数:"+para); return para;
}
}
被调用对象进行回调
package callback;
/**
*/
public class BusResponse {
public void call(CallBack callback,Object object) {
System.out.println("进入操做"); System.out.println("回调对象类型:"+callback.getClass().getSimpleName()); callback.callback(object);
}
}
测试示例
package callback;
public class CallBackMain {
public static void main(String[] args) { BusARequest objectA = new BusARequest(); BusBRequest objectB = new BusBRequest(); BusCRequest objectC = new BusCRequest(); objectA.execute(); objectB.execute(); objectC.execute(); }
}
调用结果