jtandygod 2012-10-13 09:14 采纳率: 100%
浏览 269
已采纳

JAVA:这个就是回调函数吗?我没看出来A调用B,B又回来调用A这种关系啊

public interface EventInfo { 接口
void showEventInfo();
}

public class SearchInfo implements EventInfo { 实现类
public SearchInfo() {
}

public void showEventInfo() {

    System.out.println("发生了查询事件");
}

}

public class PrintInfo implements EventInfo { 实现类
public PrintInfo() {
}

public void showEventInfo() {
    System.out.println("发生了打印事件");
}

}

public class EventNotifier {
private EventInfo ei;

public EventNotifier() {
}

public void setEventInfo(EventInfo ei) {
    this.ei = ei;
}

public void doWork() {

    ei.showEventInfo();

}

}

public class Test {

public static void main(String[] args) {
    PrintInfo pi = new PrintInfo();
    SearchInfo si = new SearchInfo();
    EventNotifier en = new EventNotifier();

    en.setEventInfo(pi);
    en.doWork();
    en.setEventInfo(si);
    en.doWork();
}

}

最后输出:
发生了打印事件
发生了查询事件

这是我在网上看到的例子 但是没看出怎么就回调了呢 ?

  • 写回答

2条回答 默认 最新

  • jinnianshilongnian 2012-10-13 16:16
    关注

    Java中所谓的回调 其实就是命令设计模式。 即命令设计模式 是 回调的 对象表示形式。

    如在javascript中

    function a() {
    return function() {//返回一个匿名函数
    alert(1);
    }
    }

    do(task) {
    task();//这就是回调

    }

    do(a());

    回调主要表达可变事情/任务的。

    如Java里边的AWT。 我们使用
    addJButton.addActionListener(new java.awt.event.ActionListener() {
    public void actionPerformed(java.awt.event.ActionEvent e) {
    //回调
    }
    }

    可以参考个案例
    [url]http://jinnianshilongnian.iteye.com/blog/1685963[/url]
    spring dao提供了一致的DAO抽象
    Callback:定义可变行为,即不可预知行为(命令设计模式)
    Template:提供模板支持,简化开发Support:提供对Template的支持,提供一组简便方法,并提供获取Template的方法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧