类似于打电话,B给A打电话让A三秒钟后提醒他时间到了。
一、创建一个接口:CallBack.java(电话)
public interface CallBack {
public void callMeWhen3sLaterHappened(String info);
}
二、创建一个类实现接口:B.java
public class B implements CallBack{
public void sayHello(){
System.out.println("hello my name is B");
}
//实现接口方法
public void callMeWhen3sLaterHappened(String info){
System.out.println(info);
}
public void callA(A a){
a.callMe3sLater(this);//给A打电话让他提醒自己时间(把B这个对象也就是自己传递给A当做参数)
}
public static void main(String[] args){
A a = new A();
B b = new B();
b.callA(a);
}
}
三、创建一个类:A.java
import java.util.Timer;
import java.util.TimerTask;
public class A {
public void sayHello(){
System.out.println("hello my name is A");
}
/**
* 3 秒钟之后通知我
*/
public void callMe3sLater(final CallBack b){
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
b.callMeWhen3sLaterHappened("3秒钟到了");//通知b三秒钟到了,调用b的接口方法(类似于通过打电话才能传递信息)
}
}, 3 * 1000);
}
}