博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Java学习笔记】回调函数
阅读量:3655 次
发布时间:2019-05-21

本文共 1286 字,大约阅读时间需要 4 分钟。

一。先借用知乎中最高票的答案来理解一下回调函数的意思
你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货。在这个例子里,你的电话号码就叫回调函数,你把电话留给店员就叫登记回调函数,店里后来有货了叫做触发了回调关联的事件,店员给你打电话叫做调用回调函数,你到店里去取货叫做响应回调事件。回答完毕。
作者:常溪玲
链接:https://www.zhihu.com/question/19801131/answer/13005983
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

下面是维基百科对回调的定义:

a callback is a piece of executable code that is passed as an argument to other code which is expected to call back (execute) the argument at some convenient time

硬翻译:  一个回调函数是作为另一个函数的参数的一个可执行的代码段 这个代码段在方便的时间来执行

通俗形象的解释:  把函数f2当做一个参数传给函数f1 并且在f1里适当的时间执行f2(下面的所有例子我都用f1,f2表示)

回调函数就是
预留给系统调用的函数,而且我们
往往知道该函数被调用的时机。这里有两点需要注意:第一点,我们写回调函数不是给自己调用的,而是准备给系统在将来某一时刻调用的;第二点,我们应该知道系统在什么情形下会调用我们写的回调函数。
二。Android中用到的回调函数
Button button = (Button)this.findViewById(R.id.button);button.setOnClickListener(new Button.OnClickListener() {  //回调函数  @override  publicvoid onClick(View v) {    buttonTextView.setText("按钮被点击了");  }});
上面的代码给按钮加了一个事件监听器,这其实就是"回调"最常见的应用场景之一。我们自己不会显示地去调用onClick方法。用户触发了该按钮的点击事件后,它会由Android系统来自动调用。
另外还有onCreate, onPause, onResume,onDestroy等等都是Android系统在Activity类中设置的回调函数,在Activity生命周期的不同阶段,Android系统会自动调用相应的方法。
整理自http://www.cnblogs.com/codingmyworld/archive/2011/07/22/2113514.html
https://www.zhihu.com/question/19801131
http://www.tuicool.com/articles/bM73U3
你可能感兴趣的文章
项目支持多数据库
查看>>
nginx部署
查看>>
Spring Cloud Alibaba——转载自楠哥
查看>>
Springboot + slf4j日志
查看>>
信息安全
查看>>
Linux部署后问题排查
查看>>
项目打包问题
查看>>
Nacos
查看>>
Gateway网关
查看>>
Spring注解
查看>>
Validate注解校验
查看>>
01 Laravel-框架核心要点
查看>>
9. JavaScript 构造函数和原型
查看>>
12.2 ES6新特性:Symbol、Promise、迭代器和生成器
查看>>
12.3 ES6 新特性- Set、Map、class 类和模块化
查看>>
Docker-入门简介-Study01
查看>>
Docke-CentOS安装-Study02
查看>>
Docker-常用命令-Study03
查看>>
Docker-镜像原理-Study04
查看>>
Docker-Tomcat为何看不到访问界面?
查看>>