一般我们在不同的应用传递数据,比较方便的是用广播和回调函数,还有一些其他的方式,这里记录一下对回调函数的理解。java中实现回调函数是用一个interface接口和内部类实现的。使用回调函数的好处在于,可以很方便的监听到某个类的状态,常用的是监听一个下载任务的进度和下载状态。
1.定义一个共有的接口

2.接口的使用
假如有两个类,b和c,可以在b类中监听c类的fail这种状态,只需要把b类的实例给c,c实现方法就好了。

在b类中,实例化c类,然后把myCallBack实例传递过去

得到的结果:

3.总结
所谓回调函数就是:在A类中定义了一个方法,这个方法中用到了一个接口和该接口中的抽象方法,但是抽象方法没有具体的实现,需要B类取实现,B类实现该方法后,它本身不会去调用该方法,而是传递给A类,供A去调用。
网友评论