首先理解回调的含义,回调就是当主程序需要的时候(或者到预定义状态值)调用的接口实现类。接口实际上不能被直接调用的,我们凡是能调用的一定不是接口或者抽象类。
接口回调的很多应用场景是出现在以接口类型为参数的情况下,以匿名内部类的方式传入而达到。
例如,假设有一个Java的API方法叫作:(其中的ClickEvent就是一个接口)
publicvoidaddEventListener(ClickEventevt);
那么,你在调用的时候就可以这样:
addEventListener(newClickEvent(){
//在这里实现接口中的方法
});
当发生某事件是,API的addEventListener方法就会被组件调用,从而你的完成的匿名内部类代码就会被组件执行。
仔细想想,其实很不是那么困难的。