java的回调函数


//现实中是把doCallback()方法放在setCallback里调用,以上是为了说明回调原理
public class Caller {
  ICallback callback;
  public void doCallback() {
    callback.func();
  }
  public void setCallback(ICallback callback) {
    this.callback = callback;
  }
}


//回调函数接口及方法
public interface ICallback {
	public void func();
}


public class MainClass {
	public MainClass() {
	}

	public static void main(String[] args) {
		Caller caller = new Caller();
		caller.setCallback(new ICallback() {
			public void func() {
				System.out.println("aaaaaaaaaa");
			}
		});//这个应该是注册一个回调函数
		caller.doCallback(); // 实现回调
	}
}


以上的例子:caller调用了ICallback里的方法,ICallback执行方法时又依靠caller注册的那个回调函数。

猜你喜欢

转载自panshaobinsb.iteye.com/blog/1887732