//定义一个接口 这个就是一会要传入下面方法的处理行为 这个接口叫做命令接口
public interface Command {
public void process(int[] target);
}
public class Process {
//这个方法里面的cmd就是一个代码块
public void each(int[] target, Command command){
command.process(target);
}
public static void main(String[] args) {
Process process = new Process();
int[] target = {1,2,3,4};
//执行each方法,但是这里的第2个参数不是一个普通的参数,而是一个代码块,匿名内部类
process.each(target, new Command() {
@Override
public void process(int[] target) {
for(int i:target){
System.out.println(i+"\n");
}
}
});
}
}
这里也可以叫做回调函数,或简称回调,是指通过函数参数传递到其它代码的,某一块可执行代码的引用。这一设计允许了底层代码调用在高层定义的子程序。在Java里面,我们使用接口来实现回调。
所谓的回调,就是程序员A写了一段程序(程序a),其中预留有回调函数接口,并封装好了该程序。程序员B要让a调用自己的程序b中的一个方法,于是,他通过a中的接口回调自己b中的方法。
本文探讨Java中回调设计的原理与应用,通过命令接口实现回调机制,展示回调函数如何在不同层间调用子程序,提升代码的灵活性与复用性。实例演示了在Java中使用接口作为回调函数的场景。

被折叠的 条评论
为什么被折叠?



