1、定义一个接口,接口里面定义一个方法;
public interface CallBack {
void run();
}
2、定义一个实现类,这个类要实现上面的接口(理解为Button)
public
class
Tool
implements
CallBack {
@Override
public
void run() {
/**需要说明*
/
}
}
}
3、定义一个新调用类(理解为Activity)
public
class
Test {
Tool tool=null;
public
void
setTool(Tool t) {
this.tool=t;
}
public void runTest(){
tool.run();
}
}
最后测试如下:
public class Client {
- public static void main(String[] args) {
- Testtest = new Test();
- //将回调对象(上层对象)传入,注册
- 实现一: test.setTool(new Tool()); test.runTest(); //和下面方法等价,因为Tool实现了CallBack,二者类似于继承关系,
- 实现二: test.test (new CallBack(){
- void run();
- });
- //传入参数时,引入方法,同时并执行该方法;由test对象发起对run()方法的回调
- }
自我“啊Q”型理解,还希望大神指正