Java接口回调
来源:互联网 发布:c语言输入保留两位小数 编辑:程序博客网 时间:2024/06/10 16:36
java的接口回调,在android下用的是越来越多了,到底该怎么理解它呢?
好比是一个领导和一个下属,还有一个下属间谍三个人之间不清不楚的关系
1、下属有一个吃饭的事情……(定义接口)
2、领导发表申明,说对下属的吃饭这件事感兴趣,并说了如果下属吃饭,他就怎么样怎么样,但是老板就是老板,总不能一直盯着下属所以……
(实现接口,并实现处理监听事件的方法)
3、领导一说话,间谍就去了下属那,并且领导给了间谍特权,可以使用我的怎么样怎么样方法
(建立于接口的连接,实际上是一个向上转型的过程,把间谍upcase为一个领导,从而调用领导的方法)
4、,然后只要一吃饭,间谍就通知领导,并替领导完成什么样什么样的事情(通过接口的实例,调用接口中的方法)
这样一说,大家应该对接口回调的机制有了点感性的理解了吗。
- interface People{
- void peopleList();
- }
- class Student implements People{
- public void peopleList(){
- System.out.println("I’m a student.");
- }
- }
- class Teacher implements People{
- public void peopleList(){
- System.out.println("I’m a teacher.");
- }
- }
- public class Example{
- public static void main(String args[]){
- People a; //声明接口变量
- a=new Student(); //实例化,接口变量中存放对象的引用
- a.peopleList(); //接口回调
- a=new Teacher(); //实例化,接口变量中存放对象的引用
- a.peopleList(); //接口回调
- }
- }
通过接口,我们将大量共通但实现细节不同的方法抽象出来,再去实现它的接口类中具体处理,这样通过接口去调用方法的时候,
就不用考虑具体调用哪个方法了。
这是一种用法,大致是多态的意思,还有一种用法就是组件中的通信:
例如Fragment间的通信
1、在Fragment中定义接口,申明接口的实例,在onAttach()方法中实现接口实例化为Activity对象
2、在Fragment中的某个方法内,使用接口的实例,调用Activity的方法,向Activity通信
3、Activity实现接口与结构内的方法,实现处理回调的逻辑
0 0
- Java:接口回调
- java 回调接口
- java接口回调
- Java 接口回调
- java接口回调
- Java接口回调
- java接口回调
- Java接口回调
- java接口回调
- Java接口回调
- Java接口回调
- java 接口回调
- Java 接口回调
- jAVA接口回调
- jAVA接口回调
- java-接口回调
- java-接口回调
- java接口回调
- poj 1258 Agri-Net(prim求最小生成树)
- Android adb 无法启动时解决方法
- BASH的保护性编程技巧
- Oracle日期周详解以及周开始结束时间计算
- 【数论】 POJ 2115 C Looooops
- Java接口回调
- Java里的堆(heap)栈(stack)和方法区(method)
- 面试算法(四十三)n个骰子的点数
- 从今天起,踏上go语言编程艺术之旅
- 读《浪潮之巅》--过于过去(二)
- c#得到本月有几周和这几周的起止时间
- centos使用ajp整合apache和tomcat
- Linux VIP(虚拟IP)配置后,无法ping通的问题处理
- webstorm注册序列号和那啥