java与安卓中的回调callback学习笔记
1.回调的简单设计如下:
package com.listercai.top;
public class A {
private CallBack callBack;
private AnotherCallBack anotherCallBack;
public void SetCallBack(CallBack callBack,AnotherCallBack anotherCallBack)
{
this.callBack=callBack;
this.anotherCallBack=anotherCallBack;
}
public void AHelper()
{
callBack.call();
anotherCallBack.call();
}
public static void main(String[] args) {
A a=new A();
//设置回调监听
//第二接口回调使用匿名内部类,简化书写
a.SetCallBack(new B(), new AnotherCallBack() {
@Override
public void call() {
//实现自己的逻辑
System.out.println("");
}
});
//通过a的方法去调用回调接口里面的函数
a.AHelper();
}
}
package com.listercai.top;
public class B implements CallBack{
@Override
public void call()
{
System.out.println("do something need longtime");
}
}
package com.listercai.top;
public interface CallBack {
//接口只能有final修饰的常量
public static final String InterfaceName="CallBack";
public void call();
}
package com.listercai.top;
public interface AnotherCallBack {
public void call();
}
里面设计了2种方式,分别是使用了实现了回调接口的类和匿名内部类的方式,第2种是现在普遍的用法。
什么是java中的回调,简单理解就是,A类调用了B类中的某C方法,反过来B类也调用了A类中的方法D,这个D方法就是回调函数。
java与安卓中的回调callback学习笔记的更多相关文章
- Java中的回调函数学习
Java中的回调函数学习 博客分类: J2SE JavaJ# 一般来说分为以下几步: 声明回调函数的统一接口interface A,包含方法callback(); 在调用类caller内将该接口设置 ...
- JavaSE中Collection集合框架学习笔记(2)——拒绝重复内容的Set和支持队列操作的Queue
前言:俗话说“金三银四铜五”,不知道我要在这段时间找工作会不会很艰难.不管了,工作三年之后就当给自己放个暑假. 面试当中Collection(集合)是基础重点.我在网上看了几篇讲Collection的 ...
- JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序
前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...
- Java基础及JavaWEB以及SSM框架学习笔记Xmind版
Java基础及JavaWEB以及SSM框架学习笔记Xmind版 转行做程序员也1年多了,最近开始整理以前学习过程中记录的笔记,以及一些容易犯错的内容.现在分享给网友们.笔记共三部分. JavaSE 目 ...
- 浏览器中js执行机制学习笔记
浏览器中js执行机制学习笔记 RiverSouthMan关注 0.0772019.05.15 20:56:37字数 872阅读 291 同步任务 当一个脚本第一次执行的时候,js引擎会解析这段代码,并 ...
- Java中的回调函数学习-深入浅出
Java中的回调函数一般来说分为下面几步: 声明回调函数的统一接口interface A.包括方法callback(); 在调用类caller内将该接口设置为私有成员private A XXX; 在c ...
- Java IO流中的File类学习总结
一.File类概述 File类位于java.io包中,是对文件系统中文件以及文件夹进行封装的对象,可以通过对象的思想来操作文件和文件夹. File类有多种重载的构造方法.File类保存文件或目录的各种 ...
- Android中关于回调概念的笔记
一.回调函数 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数.回调函数不是由该函数的实现方直接调 ...
- JavaSE中Collection集合框架学习笔记(1)——具有索引的List
前言:因为最近要重新找工作,Collection(集合)是面试中出现频率非常高的基础考察点,所以好好恶补了一番. 复习过程中深感之前的学习不系统,而且不能再像刚毕业那样死背面试题,例如:String是 ...
随机推荐
- How to start a pdf reader from a Linux command line?
Before you do this, you should be in a GOME or KDE environment, then type the following commands to ...
- APK动态加载框架 https://github.com/singwhatiwanna/dynamic-load-apk
https://github.com/singwhatiwanna/dynamic-load-apk
- vue 实现点赞
在v-for循环里 <ul class="project_content"> <li v-for="(item, index) in items&quo ...
- 协程,greenlet原生协程库, gevent库
协程简介 协程(coroutine),又称为微线程,纤程,是一种用户级的轻量级线程.协程拥有自己的寄存器上下文和栈. 协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来时,恢复之前保存的上下文 ...
- mybatis源码阅读-初始化六个工具(六)
六个基本工具图集 图片来源:https://my.oschina.net/zudajun/blog/668596 ObjectFactory 类图 接口定义 public interface Obje ...
- hdu 2242双联通分量+树形dp
/*先求出双联通缩点,然后进行树形dp*/ #include<stdio.h> #include<string.h> #include<math.h> #defin ...
- hdu 4171 最短路
#include<stdio.h> #include<string.h> #include<queue> #include<iostream> usin ...
- 优化实例- not use hash to avoid temp space issue
在展开下面的original sql 和 execution plan之前,要知道这个SQL的问题就在于占用大量的TEMP space orignal SQL SELECT roster.IC_N A ...
- Java:解决Servlet的UTF8编码问题
要让Servlet支持UTF8,需要在doGet或者doPost中添加如下一条语句: request.setCharacterEncoding("UTF-8");
- Oracle EBS 从Web界面进入责任时,提示不存在可用的有效责任
Oracle EBS 从Web界面进入责任时,提示不存在可用的有效责任 每次在Web界面,点击某一责任的功能时,弹出Form.会提示错误:对不起,不存在可用的有效责任. ...