怎样理解java中的回调函数

如题所述

 程序员A写了一段程序(程序a),其中预留有回调函数接口,并封装好了该程序。程序员B要让a调用自己的程序b中的一个方法,于是,他通过a中的接口回调自己b中的方法。目的达到。在C/C++中,要用回调函数,被掉函数需要告诉调用者自己的指针地址,但在JAVA中没有指针,怎么办?我们可以通过接口(interface)来实现定义回调函数。
假设我是程序员A,以下是我的程序a:
  [java] view plaincopyprint?
  public class Caller
  {
  public MyCallInterface mc;
  
  public void setCallfuc(MyCallInterface mc)
  {
  this.mc= mc;
  }
  
  public void call(){
  this.mc.method();
  }
  }
  还需要定义一个接口,以便程序员B根据我的定义编写程序实现接口。

  public interface MyCallInterface
  {
  public void method();
  
  }
  于是,程序员B只需要实现这个接口就能达到回调的目的了:
  public class B implements MyCallInterface
  {
  public void method()
  {
  System.out.println("回调");
  }
  
  public static void main(String args[])
  {
  Caller call = new Caller();
  call.setCallfuc(new B());
  call.call();
  }
  }
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网