`
oraclestudy
  • 浏览: 497653 次
文章分类
社区版块
存档分类

编程思想基本概念之回调(Callback)

 
阅读更多

在软件模块调用中,主要有三种机制:同步调用,异步调用和回调。

同步调用是调用方(A)call被调用方(B)的接口,并等待B处理完给出一个回执后A才继续执行,这期间是“阻塞”的。

异步调用是调用方(A)call被调用方(B)的接口后,不等待B执行完,且B在被调用后会直接回执A。

回调是调用方(A)call被调用方(B)时,B也回调(callback)被调用方,双方互调接口,只不过call动作是由A发起的。

同步调用是最简单的,异步调用一般是在回调的基础上实现的。所以了解“回调”的机制是至关重要的。各位朋友请看下面的代码。

(注:以下示例用Java语言实现,在C,C++或Pascal等语言中也有相应的方式实现。)



上面就是一个接口类(抽象类,abstract class),他需要在调用方处被实现为一个匿名类。其中的postExec就是回调方法。



上面是一个被调用的类,其中的setCallBack方法是被调用的方法。



上面的Test就是一个用于测试的调用者类,它通过main方法中实例化一个FooBar,并用实现的ICallBack的匿名类作为参数传递给FooBar的被调用方法setCallBack,而在这个虚拟方法中,FooBar调用了匿名类的匿名类的postExec方法的动作,这个动作就是回调(Callback)。


分享到:
评论

相关推荐

    回调函数Callback Function

    ### 回调函数Callback Function #### 一、基本概念 **回调函数**是一种常见的编程模式,广泛应用于多种编程语言中,特别是在C/C++等语言中非常常见。简单来说,回调函数是指通过函数指针传递的一个函数,该函数会...

    CallBack回调函数

    回调函数在计算机编程中是一种非常重要的机制,尤其是在...然而,随着编程语言和库的发展,如Promise、async/await等新的异步处理方式出现,回调函数的使用逐渐被替代,但其基础思想仍然在现代编程中发挥着重要作用。

    C++回调函数.pdf////C++回调函数.pdfC++回调函数.pdf

    回调函数的基本思想是将一个函数作为参数传递给另一个函数,然后在适当的时机调用这个传递进来的函数。这种方式在处理事件驱动编程时尤为常见,因为它提供了一种灵活的方式来响应特定事件。 **定义回调函数的一般...

    VC++回调函数使用

    本文将深入探讨VC++回调函数的基本概念、工作原理以及如何使用。 ### 回调函数的基本概念 回调函数的核心思想是将函数的指针作为参数传递给另一个函数。当被调用的函数执行到一定程度时,会使用这个传递的指针来...

    java中回调函数的简单实现

    回调函数的核心思想是将一个函数作为参数传递给另一个函数,然后在适当的时候由被调用的函数执行这个传递进来的函数。这种模式在处理异步操作时特别有用,因为它允许我们定义在特定操作完成后的响应逻辑。 标题...

    Java中的回调使用

    回调的概念基于一个简单的思想:当某个操作完成或者达到某个条件时,一个函数(回调函数)会被调用。在Java中,回调并不是语言内置的特性,但可以通过接口、匿名内部类或Java 8引入的Lambda表达式来实现。 首先,...

    经典回调函数实例

    回调函数的基本思想是将一个函数作为参数传递给另一个函数,然后在内部函数执行完毕后调用这个传入的函数。这种方式使得我们可以处理异步操作的结果或者在特定事件发生时执行特定的操作。 在“经典回调函数实例”中...

    接口回调Demo

    在Android开发中,接口回调(Interface Callback)是一种重要的设计模式,它主要用于组件间的通信,特别是在处理异步操作时。这个“接口回调Demo”应该是一个示例项目,演示了如何使用接口来传递AsyncTask下载的数据...

    回调实例 Android

    首先,回调函数的基本思想是:当一个方法执行完成后,它不会立即返回结果,而是将一个回调接口作为参数传递给调用者。一旦方法完成其操作,它会通过这个回调接口调用特定的方法,将结果通知给调用者。这种方式在处理...

    回调函数

    在深入探讨给定代码示例中的“回调函数”这一核心概念之前,我们首先需要理解什么是回调函数以及它在计算机编程中的重要性和应用。回调函数,简单来说,是一种将函数作为参数传递给另一个函数的设计模式,这使得被...

    Java回调函数详解共6页.pdf.zip

    回调函数的核心思想在于,当一个操作执行完毕时,它会调用事先定义好的函数,这个函数被称为回调函数。在Java中,回调通常通过接口实现,其中一个类(回调接收者)实现了接口中的方法,而另一个类(回调提供者)在...

    java 最简答的回调理解

    首先,回调的基本思想是让一个函数或方法作为参数传递给另一个函数,当这个被调用的函数执行完毕后,它会调用我们传入的函数。这种方式使得调用者(通常是一个外部系统或事件处理器)能够控制何时以及如何执行特定的...

    回调函数[文].pdf

    在本文中,我们将深入探讨回调函数的概念、使用方法以及如何在C++中实现回调。 首先,回调函数的核心思想是将函数的指针作为参数传递给另一个函数。当这个被调用的函数需要执行某些特定任务时,它会使用这个传递的...

    callback.pdf

    回调的基本思想是,在某个操作完成时,能够自动地调用一段预先定义好的代码。这通常发生在以下几种场景: 1. **异步处理**:在处理耗时的操作如网络请求或文件读写时,我们不希望阻塞主线程,而是将这些操作放到...

    gui学习gui学习gui学习

    在本文中,我们将深入探讨GUI学习的核心概念,包括基本的编程思想、回调函数以及常用控件的代码框架。 编程的基本思想在于建立操作与响应之间的关联。在GUI编程中,我们定义一个事件(如按钮点击)触发一个特定的...

    vtable.rar

    在C/C++编程中,回调函数是一个至关重要的概念,它扩展了程序设计的灵活性和可扩展性。回调机制允许底层代码在特定事件或条件满足时调用预先注册的高层代码,这种模式尤其在异步处理、事件驱动编程、以及各种接口...

    python 回调函数和回调方法的实现分析

    回调函数体现了**事件驱动**的编程思想。在事件驱动的编程模式中,程序的流程不是按照预设的顺序执行,而是由外部事件来决定下一步的操作。比如,在图形用户界面(GUI)编程中,用户的鼠标点击、键盘输入等都属于外部...

    Java回调机制

    在C/C++中,回调通常通过函数指针实现,而在Java中,由于没有指针的概念,回调机制是通过接口来实现的。 在Java中,回调的核心思想是:一个对象A持有一个接口的引用,而这个接口是由另一个对象B实现的。当对象A需要...

    精通MATLABGUI设计及原代码-@@@@MATLAB GUI新手备忘录.doc

    也就是说,我们需要在按钮 A 的回调函数 callback 里写下任务 C 的代码。 二、callback 函数 callback 函数是MATLAB GUI设计中的一种非常重要的概念。callback 函数可以实现各种交互式操作,如计算结果的显示、...

Global site tag (gtag.js) - Google Analytics