Android回调接口简单理解
来源:互联网 发布:访客网络影响网速吗 编辑:程序博客网 时间:2024/05/16 02:50
开始根本不是太懂,看了一篇大牛的博客,感觉会了那么一点,我把他改得在通俗点吧,万一以后自己还要看看呢~~
直接贴代码吧 ,比较好懂!
菜鸟类
package com.feng.test;import com.feng.test.Daniu.CallbackInter;public class Cainiao { /** * @param args */ public static void main(String[] args) { // TODO 自动生成的方法存根 //世界多出一个彩笔 Cainiao cainiao = new Cainiao(); //菜鸟有问题了,不懂就问 cainiao.hasQuestion(); } //这里有个问题 按照正常人类逻辑 是先要到电话 在xxx 在得到大牛的答案, //而这里是先实现得到大牛的答案 在来要到大牛的号码提出问题 //即:如果我们把callbackInter的接口函数实现放在setcallbackInter() //后面 是会报错 //求大神指导下 public void hasQuestion(){ //彩笔找到了一个大牛 Daniu daniu = new Daniu(); //告知大牛拿到了答案 (实现大牛接口的函数) CallbackInter callbackInter = new CallbackInter() { @Override public void callback(String answer) { // TODO 自动生成的方法存根 System.out.println("彩笔1号:嗯 我收到答案了,答案是 /"+answer+"/"); } }; //要到了大牛的电话打过去提出了自己的问题 daniu.setCallbackInter("彩笔1号", "21+23等于多少?", callbackInter); //让大牛思考会儿 daniu.Think(); }}
大牛类
package com.feng.test;public class Daniu { //抽线回调接口 private String name; public interface CallbackInter{ void callback(String answer); } private CallbackInter callbackInter; public CallbackInter getCallbackInter() { return callbackInter; } //大牛:哪个彩笔要了我的号码,我就回答哪个彩笔的问题(提供注册函数) public void setCallbackInter(String name,String question,CallbackInter callbackInter) { System.out.println("大牛:电话响了,我收到了 /"+name+"/的问题,问题是 /"+question+"/"); this.name = name; this.callbackInter = callbackInter; } //大牛脑子在思考并得出答案 public void Think(){ for(int i = 0;i<100;i++){ if(i ==0){ System.out.println("大牛正在思考问题..."); } } String answer = "54"; System.out.println("大牛:我想到答案了, 打电话回去给 /"+name+"/告诉他答案"); //大牛思考完后通知彩笔(彩笔实现接口函数) callbackInter.callback(answer); }}
最后 运行截图:
0 0
- Android回调接口简单理解
- 简单理解接口回调
- Android接口回调,最简单的理解方式
- 对于接口回调的简单理解
- android简单接口回调
- android中接口回调的理解
- Android接口回调深入理解
- Android对回调接口的理解
- 关于android接口回调的理解
- 最简单的方式理解“接口回调”的设计
- 最简单的方式理解“接口回调”的设计
- 最简单的方式理解“接口回调”的设计
- Android 接口回调 简单Demo
- android 接口回调的简单实现
- 简单理解接口
- app接口简单理解
- android回调的理解------异步任务回调接口
- android学习之路之接口回调的理解
- HDU1026 - Ignatius and the Princess I (广搜+优先队列)
- LeetCode_DP_Unique Binary Search Trees II
- Activiti整合到springMVC项目的详细配置
- ios开发之分享应用拓展share extension一
- Nginx.conf配置,安全优化
- Android回调接口简单理解
- C#Memory Management for Unity Developers(Part 1 of 3)
- 解决将Github上的项目导入到Android Studio中去
- Generate Parentheses
- MySQL for mac 安装
- C#Memory Management for Unity Developers (part 2 of 3)
- C# Memory Management for Unity Developers (part 3 of 3)
- 25 条提高 iOS App性能的技巧和诀窍
- 使用Bootstrap Tabs选项卡Ajax加载数据的实现以及遇到的问题;