Samples、懂么 发表于 2014-12-17 12:41:25

java回调

本帖最后由 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>


{:5_107:}




Samples、懂么 发表于 2014-12-17 12:52:35

代码在这
页: [1]
查看完整版本: java回调