回调是一段代码,您可以将它作为参数传递给其他代码,以便执行它。由于Java尚不支持函数指针,因此它们被实现为Command对象。就像是
public class Test { public static void main(String[] args) throws Exception { new Test().doWork(new Callback() { // implementing class @Override public void call() { System.out.println("callback called"); } }); } public void doWork(Callback callback) { System.out.println("doing work"); callback.call(); } public interface Callback { void call(); }}回调通常会保留对某些状态的引用才真正有用。
通过使回调实现具有对代码的所有依赖关系,您可以在代码与执行回调的代码之间获得间接访问。



