android回调函数总结

标签: android 回调函数 | 发表时间:2014-08-27 16:12 | 作者:weicaijin8
出处:http://www.iteye.com
android回调函数总结

回调函数就是那些自己写的,但是不是自己来调,而是给别人来掉的函数。

消息响应函数就可以看成是回调函数,因为是让系统在合适的时候去调用。这不过消息响应函数就是为了处理消息的,
所以就拿出来单做一类了。其实本质上就是回调函数。

但是回调函数不是只有消息响应函数一种,比如在内核编程中,驱动程序就要提供一些回调函数,
当一个设备的数据读写完成后,让系统调用这些回调函数来执行一些后续工作。

回调函数赋予程序员这样一种能力,让自己编写的代码能够跳出正常的程序控制流,
适应具体的运行环境在正确的时间执行。

回调函数总结

别人给回调的定义:

所谓回调,就是对象A调用另一对象B中的某个方法b,然后B又在某个时候反过来调用A中的某个函数c,对于B来说,这个c便叫做回调函数。
回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口.



我的理解, 和一般的类之间的组合类似。就只是A对象调用B对象的一个方法b。只不过方法b是抽象的,是后期绑定的。



java回调代码。

    1,定义回调接口。
复制代码

package  com.smart;  
/**  
* 定义回调接口  
*/   
public   interface  CallBack {  
    void  execute();  
}  






package com.smart;  
/** 
* 定义回调接口 
*/ 
public interface CallBack {  
    void execute();  










package  com.smart;  
/**  
* 工具类  
*/   
public   class  Tools {  
    public   void  test(CallBack callBack){  
        long  begin = System.currentTimeMillis(); //测试起始时间      
        callBack.execute();///进行回调操作      
        long  end = System.currentTimeMillis(); //测试结束时间      
        System.out.println("[use time]:"  + (end - begin)); //打印使用时间      
  
    }  
    public   static   void  main(String[] args){  
        Tools tools = new  Tools();  
        tools.test(new  CallBack(){  
            public   void  execute() {  
                //A.method();  测试类A的某个方法执行的时间   
                //B.method();  测试类B的某个方式执行的时间   
                System.out.print("回调" );  
            }  
        });  
    }  
}  















package com.smart;  
/** 
* 工具类 
*/ 
public class Tools {  
    public void test(CallBack callBack){  
        long begin = System.currentTimeMillis();//测试起始时间     
        callBack.execute();///进行回调操作     
        long end = System.currentTimeMillis();//测试结束时间     
        System.out.println("[use time]:" + (end - begin));//打印使用时间     
 
    }  
    public static void main(String[] args){  
        Tools tools = new Tools();  
        tools.test(new CallBack(){  
            public void execute() {  
                //A.method();  测试类A的某个方法执行的时间  
                //B.method();  测试类B的某个方式执行的时间  
                System.out.print("回调");  
            }  
        });  
    }  

















   优点:我个人认为优点主要是将代码中变与不变的部分相分离,从而大大提高了程序的重用性和扩展性。

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [android 回调函数] 推荐:

android回调函数总结

- - Java - 编程语言 - ITeye博客
android回调函数总结. 回调函数就是那些自己写的,但是不是自己来调,而是给别人来掉的函数. 消息响应函数就可以看成是回调函数,因为是让系统在合适的时候去调用. 这不过消息响应函数就是为了处理消息的,. 但是回调函数不是只有消息响应函数一种,比如在内核编程中,驱动程序就要提供一些回调函数,. 当一个设备的数据读写完成后,让系统调用这些回调函数来执行一些后续工作.

javascript 回调函数实现使用

- - Web前端 - ITeye博客
在模拟代码中,我们再增加一种回调方式:.     var context="全局";.         context:"初始",.         callback:function (str){//回调函数.             alert("callback:我所处的上下文中,context="+this.context+",我被回调的方式:"+str);.

Android 遥控车

- CasparZ - LinuxTOY
您确定您真的会用 Android 手机玩赛车. 16 岁的法国学生 Jonathan Rico 使用 Android 手机通过蓝牙实现了对改装玩具汽车的遥控. 操控的方式和那些标榜的智能手机游戏一样,使用重力感应,差别是这次控制的是现实世界中的遥控汽车. 收藏到 del.icio.us |.

Android免费?毛

- Ruby - FeedzShare
来自: 36氪 - FeedzShare  . 发布时间:2011年08月17日,  已有 2 人推荐. 微软CEO Steve Ballmer在预测竞争对手产品时通常口无遮拦. 比如他去年抨击Google的Android战略时,很多人都不屑一顾. 接着Android蚕食了微软的地盘,后来又开始侵犯苹果的地盘.

GetEd2k (Android应用)

- 某牢 - eMule Fans 电骡爱好者
GetEd2k是一个Android应用程序,作者是anacletus. 此应用可以帮助你把网页中的电驴(eDonkey) 链接添加到你个人电脑的电驴客户端里,不过前提是你的客户端开启了用于远程控制的Web interface(Web服务器,网页接口,Web界面),当然,eMule(电骡), MLDonkey 和 aMule 都支持该功能,所以这三种主流电驴客户端的用户都可以使用GetEd2k.

Android 4.0发布

- coofucoo - Solidot
Shawn the R0ck 写道 "2011年10月19日早上10点,谷歌与三星联手在香港发布了Android 4.0和Galaxy Nexus. " Android 4.0 的主要特性包括:更精细的UI,加强多任务和通知功能,锁屏下可打开摄像头和浏览通知,改进文本输入和拼写检查;增强视频录制和图像编辑功能,支持剪裁和旋转图片、消除红眼、添加效果等;面部识别解锁;Android Beam允许两台支持NFC的设备之间交换应用程序、联系人、音乐和视频;Wi-Fi Direct,蓝牙HDP,等等.

NoScript For Android发布

- John - Solidot
用于屏蔽脚本的浏览器流行扩展NoScript发布了Android版本. 开发者称已经在Firefox for Android测试过,此外也应该能工作在基于Maemo的设备上. 移动版NoScript可以帮助移动用户抵抗基于脚本的攻击. Android平台上的扩展功能和桌面版相似,允许用户对每个网站单独设置脚本执行许可.

Android入门:ContentProvider

- - ITeye博客
一、ContentProvider介绍. ContentProvider翻译为“内容提供者”;. 定义:指该应用包含一些方法,供外界访问,其他应用程序可以调用该方法,比如如果应用A创建了一个数据库“test.db”,默认是私有的,即其他应用程序不能对其进行操作,但是如果应用A使用了ContentProvider,则其他应用程序可以访问该数据库;.

Android Service 详解

- - CSDN博客移动开发推荐文章
一个Service也是一种应用程序组件,它运行在后台以提供某种服务,通常不具有可见的用户界面. 其它的应用程序组件可以启动一个Service,即使在用户切换到另外一个应用程序后,这个Service还是一直会在后台运行. 此外,一个应用程序也可以绑定到一个Service然后使用进程间通信(IPC)方式与Service之间发生交互.