定义
A类调用B类去解决问题,B类解决问题得到结果以后,调用A类中的方法(回调函数)进行结果的展示/后续处理;
为了B类可以调用A类中的方法(回调函数),并且知道就是要调用该方法,就需要一个interface,A类继承这个interface,实现interface的方法(即回调函数),并在调用B类方法时传入这个interface,这样B类的方法就知道并可以要通过这个interface来调用A类的方法(回调函数)处理这个结果了。
实现
- Class A实现接口CallBack callback——背景1
- class A中包含一个class B的引用b ——背景2
- class B有一个参数为callback的方法f(CallBack callback) ——背景3
- A的对象a调用B的方法 f(CallBack callback) ——A类调用B类的某个方法 C
- 然后b就可以在f(CallBack callback)方法中调用A的方法 ——B类调用A类的某个方法D(接口CallBack中定义的方法)
模板+回调
A类继承CallBack(不同的A类具有不同的CallBack接口方法的实现),B类作为模板类(防止代码重复),B类创建的对象b可以回调不同的a实现模板+定制的效果。
使用:B类创建对象,传入不同的a,实现不同的效果。