一个例子理解Java回调机制
2017-02-26 22:35
190 查看
Java回调机制
用一个简单的例子来理解Java的回调机制
小明做数学作业时,要计算的数字很大,因此打算用计算器来帮助计算,然后根据计算器的运算结果填空。这里把填空操作抽象成方法,写到接口DoCalculate里,然后计算器和小明分别封装成两个类,代码如下:
FillBlank 接口
/** * 计算接口 */ public interface DoCalculate { public void fillBlank(int result); }
计算器类
/** * 计算器类 */ public class Calculator { //计算方法,计算完成后调用fillBlank方法并传计算结果 public void calculate(int a, int b, DoCalculate customer) { customer.fillBlank(a + b); } }
小明(学生)类
/** * 学生类 */ public class Student implements DoCalculate { //持有计算器 private Calculator cal; public Student() { cal = new Calculator(); } @Override public void fillBlank(int result) { System.out.println("小明使用计算器计算结果为" + result); } public void useCalculator(int a, int b) { cal.calculate(a, b, this); } }
测试类
/** * 测试类 */ public class Test { public static void main(String[] args) { Student xiaoming = new Student(); xiaoming.useCalculator(1, 2); } }
整体流程为:小明拥有计算器,当想用计算器算题时,调用useCalculator方法,传入参数,然后useCalculator方法调用计算器的calculate,传的参数包括要计算的数和小明自身,计算器计算结果以后,通知小明,小明完成填空操作。
相关文章推荐
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个例子教你理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制
- 一个经典例子让你彻彻底底理解java回调机制(一)
- 一个经典例子让你彻彻底底理解java回调机制