彻底理解android中的回调机制

网上有很多博文都解释了java回调机制,但有些看了并不那么容易理解

老是有同事说,没问题,这里个回调,我却不知道什么叫回调,于是我下定决定要去弄懂这个java机制

废话不多说,实现回调必须要有两个类,一个接口。下面讲一下步骤:

1.类A中有1个方法(此方法中有CallBack callBack的参数)方法中执行了接口中的方法

2.类B实现了接口,并重写方法,同时执行类A中的定义的那个方法,执行到接口的方法,就调用了类B的实现接口的方法,这就是回调方法

总的一句话:类A调用类B的方法,类B放过来调用类A的方法,这就是回调方法。

是不是很绕,那就对了,下面就来个例子。

首先要定义一个接口:

  1. public interface CallBack 
  2. {  
  3.     public void method();  
  4.   
  5. }  
下面是类A:A中预留有接口的函数,也就是说有个方法中参数为 CallBack callBack

  1. public class A  
  2. {  
  3.     public CallBack callBack;  
  4.   
  5.     public void setCallfuc(CallBack callBack)  
  6.     {  
  7.        callBack.method();  
  8.     }  
  9. }      
最后是类B:B实现接口

  1. public class B implements CallBack  
  2. {  
  3.     public void method()  //这是实现接口重写的方法
  4.     {  
  5.        System.out.println("回调");  
  6.     }  
  7.   
  8.     public static void main(String args[])  
  9.     {  
  10.        A a = new A();  
  11.        a.setCallfuc(this);   // 执行到callBack.method()时,调用此类中实现接口的方法
  12. // 其实可改为此类不实现接口,a.setCallfuc(new CallBack(){//在这里面重写方法});
  13.     }  
  14. }  
以上是我的拙见,若有不对的地方,请指出,多谢各位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值