这是在维基解密中,对回调函数的描述:我认为这个描述太经典了,所以放到这里:
在计算机程序设计中,回调函数,或简称回调,是指通过函数参数传递到其它代码的,某一块可执行代码的引用。这一设计允许了底层代码调用在高层定义的子程序。
我感觉回调函数有这样的一个作用:
当你自己的类,需要完成一个功能,但是这个功能需要到调用这个方法的类中的一些属性,这样就形成了回调方法,接口只是一个约定,也就是方便后者的调用
代码:
A类,
package com.xu.test.huidiao;
public class A {
public int doSomething(B b){
return b.doSomething();
}
}
B类:这个接口仅仅是一个约定,就是Al类所需要的资源都在这个方法中可以获得,这就需要对B类的方法进行定义,这样也就是形成了一种回调的方式,这种方式适合于团队开发
package com.xu.test.huidiao;
public interface B {
public int doSomething();
}
C类:这个类仅仅相当于一个调用者,
package com.xu.test.huidiao;
public class C {
public static void main(String[] args) {
A a = new A();
int b = a.doSomething(new B() {
public int doSomething() {
return 1;
}
});
System.out.println(b);
}
}
在开发中接口的特点就是相当于一种约定,而这种约定就是我们团队开发中可以进行独立的保障