1、什么是Callback,什么时候需要使用Callback

callback是回调的意思,一般我们需要2个类需要相互掉用,一个类把数据动态传递给另外一个类的时候,可以用这种方式,比如Android里面的Launcher类和LauncherModel类,LauncherModel里面有接口很多没有实现的方法,Launcher实现LauncherModel的接口,实现方法,传递数据给LauncherModel类。

2、简单代码理解

1)CallBack.java文件内容如下

public class CallBack {

private Callback mCallback;

public CallBack(Callback callback) {

this.mCallback = callback;

}

public static interface Callback {

public void before();

public void after();

}

public void doThing() {

mCallback.before();

System.out.println("hello chenyu");

mCallback.after();

}

}

2)TestCallBack.java文件如下

public class TestCallBack implements CallBack.Callback{

public CallBack mCallback;

public TestCallBack() {

mCallback = new CallBack(this);

}

@Override

public void before() {

System.out.println("hello before");

}

@Override

public void after() {

System.out.println("hello before");

}

public void doThing() {

mCallback.doThing();

}

public static void main(String[] args) {

new TestCallBack().doThing();

}

}

3、运行结果

hello before

hello chenyu

hello before

以上整理内容,需要的朋友可以参考下

时间: 2017-04-11

java call back_java中Callback简单使用总结相关推荐

  1. 【转载】谈谈我对Java中CallBack的理解

    谈谈我对Java中CallBack的理解 转载自: http://www.cnblogs.com/codingmyworld/archive/2011/07/22/2113514.html CallB ...

  2. Java中的简单工厂模式(转)

    Java中的简单工厂模式 举两个例子以快速明白Java中的简单工厂模式: 女娲抟土造人 话说:"天地开辟,未有人民,女娲抟土为人."女娲需要用土造出一个个的人,但在女娲造出人之前, ...

  3. 【Java学习】从一个简单的HelloWorld项目中入门maven

    创建一个maven项目 这里推荐官方文档:maven官方文档 [注]此篇文章也是笔者学习笔记,如有错误,请见谅. [注]我把Goal翻译成命令.比如Plugin Goal: ps:我他喵的写了一大半的 ...

  4. Java中的简单浮点数类型float和double不能够进行精确运算

    在java中,简单的浮点类型float和double是不能够进行运算.我们先看下面的两个程序代码: 代码一: import java.util.Scanner; class Circle { doub ...

  5. java rest客户端_Java中的简单REST客户端

    java rest客户端 如今,大多数用于与某些服务器通信的移动应用程序都使用REST服务. 这些服务也是JavaScript或jQuery的常用惯例. 现在,我知道在Java中为REST服务创建客户 ...

  6. Java中的简单REST客户端

    如今,大多数用于与某些服务器通信的移动应用程序都使用REST服务. 这些服务也是与JavaScript或jQuery一起使用的常见做法. 现在,我知道在Java中为REST服务创建客户端的2种方法,在 ...

  7. java扫描局域网中可用ip_使用java线程扫描局域网ip简单方案

    package com.cjh.thread; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...

  8. JAVA中初始化线程的两种方法_java中最简单的方式新起一个线程

    启动一个线程 在一个方法中启动一个线程,有两种方法 第一种是让类实现Runable接口,这样的话编译器就会提示你实现里面的未实现的方法(就是run方法) 第二种是,现在方法中new一个线程,然后直接调 ...

  9. java数字编程提,java从字符串中提取数字的简单实例

    随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们怎么把其中的数字提取出来呢?大致有以下几种方法, ...

最新文章

  1. 一文了解点特征直方图
  2. js图片压缩并上传?
  3. ASPNET登陆总结
  4. kali linux 渗透测试 01 kali介绍
  5. linux-epoll研究
  6. 设计模式(一)简单工厂(创建型)(JavaPHP)
  7. spark:sortByKey实现二次排序
  8. android xml通知栏权限配置,Android开发中 AndroidManifest.xml配置之service,receiver标签配置详解...
  9. (2021) 24 [持久化] 文件系统API
  10. 【云栖大会】与马云一起开启“飞天·进化”之旅
  11. 操作系统(13)-操作系统中的死锁及其预防、避免、检测与解除
  12. 2016-6-3Ajax异步复习
  13. 特定时间循环增加一个时间段值
  14. Win10环境下使用VS2015编译PJProject
  15. SQL语句优化常见方法
  16. 笔记本电脑连不上windows无线服务器,笔记本电脑连不上无线如何解决
  17. c语言 实现参数值双向传递,基于C语言函数参数传递规律的探讨
  18. IT学习网站,各大主流网站
  19. 《惢客创业日记》2018.12.29(周六)取代手机的“量子智能标签”
  20. 收入--支出=储蓄?

热门文章

  1. QT Creator使用matlab库文件读取.mat文件数据
  2. Pandas处理Excel文件源码学习
  3. 第一章 初识Mysql
  4. 问问大家作为大数据总监,刚刚到一家新单位,怎么开展工作比较好?
  5. HTTPS从认识到线上实战全记录
  6. the resource is not on the build path of a java project错误
  7. How to Map Distinct Value Types Using Java Generics--reference
  8. Lesson 15.1 学习率调度基本概念与手动实现方法
  9. 用Kubernetes部署超级账本Fabric的区块链即服务(1)
  10. 写给大家看的机器学习书【Part1】什么是机器学习?机器学到的到底是什么?