初学者---Android 接口回调

转自:

java 接口。Android Interface 自定义接口回调


不是很懂java 的Interface 接口的具体怎么实现的。在网上看了很多例子,终于理解了那么点啊。

因为原来在学习做一个微信的语音功能要做到一个接口功能。微信的后面有时间会写出来。


Interface 主要用来描述这类具有什么功能,而并不能给出每个功能的具体是实现。一个类可以实现多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。

p.s.interface一定是public

下面的例子就是自己写的一个例子可以尝试着自己写一个:

接口回调的典型例子就是Android的Button监听事件了,

button.setOnClickListener(new OnClickListerner({
	@Override
	public void onClick(View v) {
	   System.out.println("调用回调函数");
	}
});

button的点击就是触发了回调的对象。

当用户点击Button的时候,接口函数被回调。所以可以这样子理解java callback,当条件成立了,或者是触发了某个条件,而引起了函数的回调。这个就是我对Interface接口的理解。

所以我们首先需要写一个Interface接口叫CallListener,然后写一个能调用该接口函数的类,叫做Call最后写一个用到Call类对象调用监听的NeedCall类。

接口类:

public interface CallListener {  
    public void finishCall();  
}  
Call类:
public class Call {  
    CallListener callListener;  //定义接口对象  
    public void setOnCallListener(CallListener listener){ //接口对象构造(接口没有实例化,因为没有具体方法)  
        this.callListener=listener;  
    }  
    /* 
     * 触发接口的回调方法,相当于button的点击触发,在主类方法调用该方法触发回调 
     */  
    public void onCall(){  
        callListener.finishCall();  
    }  
}  
NeedCall类:
public class NeedCall {  
  
    public static void main(String[] args) {  
        Call call=new Call();  //Call类的实例化  
          
        call.setOnCallListener(new CallListener() {  
              
            @Override  
            public void finishCall() {  
                System.out.println("对接口方法的重写,调用回调函数时调用该回调函数");  
            }  
        });  
          
        call.onCall();  //真正触发回调的方法。  
    }  
}  
总结一下,要触发接口就是要构成触发接口的方法 。就像你要去监听一个人是否离开房间,就开一个口子传字条(相当于定义一个接口),再定义一个可以调用该接口的方法,最后那个人离开时触发你的监听条件。你只需要看着口子就可以,一旦条件触发,就构成了回调了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值