1.什么是接口回调
接口回调是指:可以把使用某一接口的类创建的对象的引用赋给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口的方法。实际上,当接口变量调用被类实现的接口中的方法时,就是通知相应的对象调用接口的方法,这一过程称为对象功能的接口回调。
2.实例
interface BackInterface {//创建一个回调接口
void backMethod();}
class Teacher implements BackInterface {
//因为老师要告诉学生做作业,所以这个传一个学生的引用
private Student student;
public Teacher(Student student){
this.student = student;
}
//老师告诉学生做作业
public void doEvent(){
System.out.println("老师让学生做作业");
student.doPractice(this);
}
//用于接收接口回调的消息
@Override
public void backMethod() {
System.out.println("老师接收到学生做完作业的消息");
}
}
class Student {
//学生做完作业,并告诉老师
public void doPractice(BackInterface BackInterface) {
System.out.println("学生开始做作业");
System.out.println("学生告诉老师已做完作业");
BackInterface.backMethod();
}
}
//测试类
public class Text1 {
public static void main(String[] args) {
Teacher teacher = new Teacher(new Student());
teacher.doEvent();
}
}
运行结果:
老师让学生做作业
学生开始做作业
学生告诉老师已做完作业
老师接收到学生做完作业的消息