本帖最后由 liqiong0327 于 2012-10-23 23:12 编辑
程序在调用一个函数时,将自己的函数的地址作为参数传递给程序调用的函数时(那么这个自己的函数称回调函数)
java一般采用接口回调实现:把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口的方法。
1、创建一个回调接口:- //回调接口
- public interface ICallBack
- {
- void run();
- }
复制代码 2、创建回调接口的实现类:- class CallBackClass implements ICallBack
- {public void run()
- {
- //输出当前时间
- System.out.println(System.currentTimeMillis() );
- }
- }
复制代码 3、创建控制类- class Controller
- {
- public ICallBack CallBackObject = null;// 引用回调对象
- Scanner input = new Scanner(System.in); //读取命令行输入
- public Controller(ICallBack obj)
- {
- this.CallBackObject = obj;
- }
- public void Begin()
- {
- while(input.next() != null)//判断是否有输入
- {
- CallBackObject.run();
- }
- }
- }
复制代码 4.main- class Program
- {
- static void Main(string[] args)
- {
- //创建控制器对象,将提供给它的回调对象传入
- Controller obj = new Controller(new CallBackClass());
- //启动控制器对象运行
- obj.Begin();
- }
- }
复制代码 码字不容易啊 |