`
anson_xu
  • 浏览: 513020 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
社区版块
存档分类

android回调函数总结

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

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

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

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

回调函数总结

别人给回调的定义:

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

 

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

 

java回调代码。

    1,定义回调接口。

Java代码
  1. package  com.smart;  
  2. /**  
  3.  * 定义回调接口  
  4.  */   
  5. public   interface  CallBack {  
  6.     void  execute();  
  7. }  
package com.smart;
/**
 * 定义回调接口
 */
public interface CallBack {
	void execute();
}

   2,定义工具类

Java代码
  1. package  com.smart;  
  2. /**  
  3.  * 工具类  
  4.  */   
  5. public   class  Tools {  
  6.     public   void  test(CallBack callBack){  
  7.         long  begin = System.currentTimeMillis(); //测试起始时间      
  8.         callBack.execute();///进行回调操作      
  9.         long  end = System.currentTimeMillis(); //测试结束时间      
  10.         System.out.println("[use time]:"  + (end - begin)); //打印使用时间      
  11.   
  12.     }  
  13.     public   static   void  main(String[] args){  
  14.         Tools tools = new  Tools();  
  15.         tools.test(new  CallBack(){  
  16.             public   void  execute() {  
  17.                 //A.method();  测试类A的某个方法执行的时间   
  18.                 //B.method();  测试类B的某个方式执行的时间   
  19.                 System.out.print("回调" );  
  20.             }  
  21.         });  
  22.     }  
  23. }  
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("回调");
			}
		});
	}
}
 

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

    Strive for maintainable ,reusable  design

 

 

    js的回调回调方法很多,但我还知道一种。 以后在补充吧。

 

Js代码
  1. function  A(callback){   
  2.       callback();  
  3. }  
  4. fuction callback(){  
  5.       alert("我被回调啦。嘎嘎" );  

分享到:
评论

相关推荐

    Android回调函数的例子

    总结一下,回调函数是Java和Android开发中的核心概念,它们使我们能够以松耦合的方式处理事件和异步操作。通过理解并熟练运用回调函数,开发者可以构建更灵活、响应更快的应用程序。在实际项目中,要善于利用回调来...

    java自定义回调函数

    总结起来,Java自定义回调函数是实现异步编程和事件驱动的关键,通过接口定义和实现,我们可以创建灵活的代码结构,使得组件之间能够更好地协作,提高代码的复用性和可维护性。在Android和SDK开发中,理解和熟练运用...

    android接口回调详解、简单例子+复杂例子

    在Android开发中,接口回调是一种常见的通信机制,用于在组件之间传递信息,特别是在异步操作中,如网络请求、文件读写等。接口回调能够帮助我们处理这些操作的结果,使得程序更加灵活和响应式。本篇文章将深入讲解...

    android自定义控件和自定义回调函数步骤示例

    总结来说,自定义Android控件和回调函数是提升应用体验的关键技术。理解并熟练掌握这些步骤,能够帮助开发者构建独特且富有交互性的用户界面,满足不同项目的需求。同时,自定义控件还可以提高代码的可复用性和模块...

    RecallBackDemo(回调函数实现简单计时器)

    总结来说,"RecallBackDemo"通过回调函数实现了计时器功能,利用抽象类和接口保证了回调函数的一致性,同时采用通知注册接口允许动态添加和管理回调。这样的设计提高了代码的灵活性,使程序能优雅地处理异步任务和UI...

    Android-抛弃使用高风险的WebViewaddJavascriptInterface方法通过对js层调用函数及回调函数的包装

    为了安全地实现JavaScript与Java的交互,我们需要对调用函数和回调函数进行包装,以确保只有预期的接口可以被访问。 描述中提到的功能包括: 1. **支持异步回调**:在JavaScript和Java之间传递复杂操作时,异步回...

    Android编程之匿名内部类与回调函数用法分析

    总结一下,匿名内部类和回调函数在Android编程中是实现事件驱动和对象间通信的重要手段。通过它们,我们可以编写简洁、灵活的代码,提高代码的可读性和可维护性。了解并熟练运用这两个概念,对于提升Android应用的...

    android 不同activity切换时它们的回调函数调用逻辑的研究

    当我们从一个Activity切换到另一个Activity时,Android系统会按照特定的生命周期回调函数调用来管理这些活动。本研究主要探讨了在不同Activity之间切换时,它们的回调函数调用逻辑。 首先,我们从一个Activity启动...

    android WebService封装 支持回调

    总结,通过封装WebService并引入回调接口,我们可以使Android应用更加灵活,易于扩展,同时减少重复代码。这种方式使得开发者无需关心网络请求的具体实现,只需要关注业务逻辑和数据处理,提高了开发效率。在实际...

    简单回调demo

    总结来说,回调是异步编程的基础,理解并熟练运用回调函数对于编写高效、可维护的代码至关重要。在实践中,我们应根据具体需求选择合适的回调实现方式,避免回调地狱,并适时引入Promise和async/await等现代异步处理...

    回调实例 Android

    在Android开发中,回调函数是一种常见的编程模式,用于处理异步操作的结果或者在特定事件发生时执行特定的代码。回调机制使得程序能够响应并处理来自其他对象或系统的行为,而无需持续轮询等待结果。本篇文章将深入...

    Callback_Androidjni_AndoidJNI层到Java层的调用_android_android回调_

    总结,Android JNI层到Java层的回调是通过JNI接口实现的,涉及到Java方法的本地签名定义、C/C++代码的编写、本地库的编译以及在Java代码中接收回调。这样的机制允许开发者充分利用C/C++的性能优势,同时保持Java的...

    android接口回调第二种优化写法详解、另外附赠简单例子

    2. **回调地狱**:当多个异步任务需要依次处理时,容易形成“回调地狱”,即嵌套的回调函数,使得代码逻辑难以跟踪。 3. **生命周期问题**:如果回调处理不当,可能会导致内存泄漏或者在Activity/Fragment已经销毁时...

    Android-Socket长连接通信心跳包消息回调Java服务端

    可以使用Handler、AsyncTask或RxJava等异步处理方式,当接收到数据后,通过回调函数通知应用层进行相应的业务处理。服务端也需要类似机制,接收到客户端的心跳包后回复,或者处理客户端发送的其他消息。 4. **Java...

    Android 回调详解及简单实例

    本文将深入解析Android回调的原理,并通过一个简单的实例来演示如何使用回调。 首先,我们来看一下Android中最常见的回调场景——点击事件。在Android中,我们通常会为一个按钮设置点击监听器,如下所示: ```java...

    Android中ListView适配器中的view重用和接口回调

    总结来说,理解并熟练运用ListView的视图复用和接口回调机制,能帮助开发者编写出更高效、响应更快的Android应用。在面对大数据量列表时,这尤为重要,因为可以显著减少内存消耗和渲染时间,提升用户体验。同时,...

    android开发总结文档

    解决方法可能涉及调整Activity的生命周期回调函数逻辑或者优化Toast显示时机。 - **其他Bug修复**:文档中还提到了其他一些Bug的解决方案,这些都是作者在实际开发过程中积累的经验分享。 总之,这份文档不仅提供了...

    Android 自定义view模板并实现点击事件的回调

    总结来说,创建Android自定义View模板并实现点击事件的回调,主要包括以下步骤: 1. 定义XML资源文件(如attrs.xml),声明自定义属性。 2. 创建自定义View类,继承自适当的父View类,如`RelativeLayout`。 3. 在...

    Android期末复习题总结.doc

    14. 当启动一个 Activity 并且新的 Activity 执行完后需要返回到启动它的 Activity 来执行的回调函数是 onActivityResult()。 15. 这个 shape 文件是画一条虚线,实线段 5dp,间隔 3dp,这是一个资源配置文件。 16...

    Android中onActivityResult的用法

    Android 中的 onActivityResult 是一个非常重要的回调函数,它允许活动之间进行数据交互。下面我们将详细介绍 onActivityResult 的用法和实现原理。 一、什么是 onActivityResult? --------------- ...

Global site tag (gtag.js) - Google Analytics