这是一个同步的回调方法(异步的需要自己单独开线程)
接口
package com.callback.demo;
public interface OnCallBack{
void onSuccess(int result);
void onFailure();
}
被调用者
package com.callback.demo;
public class Boss implements OnCallBack{
Employee employee = new Employee();
public void askQuestion(int result){
employee.setOnCallBack(this,result);
}
public void onSuccess(int result){
System.out.println("答案为:"+String.valueOf(result));
}
public void onFailure(){
System.out.print("不知道答案");
}
public static void main(String[] args){
Boss boss = new Boss();
boss.askQuestion(1);
}
}
调用者
package com.callback.demo;
public class Employee{
public Employee(){
}
OnCallBack onCallBack;
public void setOnCallBack(OnCallBack onCallBack,int result){
this.onCallBack = onCallBack;
if(result == 1){
onCallBack.onSuccess(result);
}else{
onCallBack.onFailure();
}
}
}