• 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("回调");   
                }   
            });   
        }   
    }  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
       优点:我个人认为优点主要是将代码中变与不变的部分相分离,从而大大提高了程序的重用性和扩展性。
  • 相关阅读:
    Android 微信分享信息
    微信朋友圈如何同时分享(图片+文字)
    Android应用加入微信分享
    讨论IT选定的技术招聘企业几点
    MSSQL发现第五到数据的第十
    STL 源代码分析 算法 stl_algo.h -- binary_search
    加快XCode编译链接速度(200%+)—XCode编译慢液
    linux复制文件命令scp
    写出高性能的多核并行编程
    SSH—Struts(三)—跑步者(Action)
  • 原文地址:https://www.cnblogs.com/elleniou/p/2511071.html
Copyright © 2020-2023  润新知