java的回调机制理解

class A调用另外一个类classB的方法实现一个功能,并且利用这个方法的返回值还要别的操作:
1、classA要等classB的方法运算完成以后再利用返回值操作。(效率低下,classA被阻塞直到拿到返回值)
2、classA把拿到返回值之后的操作也一并传给classB,等classB计算完成后再调用传进来的方法把classA要操作的操作了。(classA在把参数和操作传给B以后,就可以进行别的事情,不会阻塞住。把操作一并传给B的操作就是回调函数。)
以上是解释的java回调机制的概念。
为了使这个回调函数通用,也就是classB中的运算方法可以被除A以外的其他类用,就需要抽象出一个基类,所有想使用B中该运算方式的类都继承,这样就都可以使用了。由于java中不支持多继承,这里把这个回调函数抽象成一个接口(interface),在需要使用B中运算的类中写一个内部类实现这个接口,并new一个这个内部类实例,把参数和这个实例传给classB即可!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值