2、地址,但在JAVA中没有指针,怎么办?我们可以通过接口(interface)来实现定义回调函数。 假设我是程序员A,以下是我的程序a:public class Caller{ private MyCallInterface mc; public Caller(){} public setI(MyCallInterface mc){ this.mc=mc; } public call(){mc.fuc();}//Caller的调用方法} 这里需要定义一个接口,以便程序员B根据我的定义编写程序实
3、现接口。public interface MyCallInterface{ public void fuc();} 于是,程序员B只需要实现这个接口就能达到回调的目的了:public class callee implements MyCallInterface{ public void fuc(){ //do something }} 下面是调用过程:public class callbacks{ public static void main(String args[]){
5、方法的能力。caller中具有的接口引用很关键。实现了此接口引用的callee只需将自己的引用传给Caller。一般来说分为以下几步:1.声明回调函数的统一接口interface A,包含方法fuc();2.在调用类caller内将该接口设置为私有成员private A XXX;3.在caller内提供一个public方法,可以将外部“该接口A的实现类的引用”通过形参传给XXX;4.caller的某个方法call()中会用到XXX.fuc()方法;5.在caller的实例中,将实现了A接口的对象的引用传给caller,后调用call()方法;注意:步骤3中