void Main()
{
Action a = new Action(() =>Console.WriteLine("搭雹尺hello world!"肆闷))
CallMe3Times(a)
}
void CallMe3Times(Action a)
{
a()
a()
a()
}
首先理解回调的含义,回调就是当主程序需要的时候(或者到预定义状态值)调亮码用的接口实现类。接口实际上不能被直接调用的,我们凡是能调用的一定不是接口或者抽象类。接口回调的很多应用场景是出现在以接口类型为参数的情况下,以匿名内部类的方式传入而达到。
例如,假设有一个Java的API方法叫作:(其中的ClickEvent就是一个接口)
public void addEventListener(ClickEvent evt);
那么,你在调用的时候枝搏就可以这样:
addEventListener(new ClickEvent(){
//在这里实现接口中的方法
});
当发生某事件是,API的addEventListener方法就会被组件调用,从而你的敬搭哪完成的匿名内部类代码就会被组件执行。
仔细想想,其实很不是那么困难的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)