回调函数,主要是为了异步处理
通过callback接口方式实现
执行顺序:
1. test调用testtime
2. testtime函数执行接口
3. 回到test类执行callback接口execute
4. 具体执行testmethod()
代码参考了:http://kidult.iteye.com/blog/148982
使用场景:调用某个函数的时候,一时间不能立刻处理完成,则先返回
理解不深刻,具体使用场景还不清楚,需要时间消化
通过callback接口方式实现
执行顺序:
1. test调用testtime
2. testtime函数执行接口
3. 回到test类执行callback接口execute
4. 具体执行testmethod()
代码参考了:http://kidult.iteye.com/blog/148982
使用场景:调用某个函数的时候,一时间不能立刻处理完成,则先返回
理解不深刻,具体使用场景还不清楚,需要时间消化
package com.nbgame.callback;
public class CallBackTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
CallBackTest test = new CallBackTest();
test.testTime(new CallBack() {
@Override
public void execute() {
// TODO Auto-generated method stub
TestObject.testMethod();
}
});
}
public void testTime(CallBack callBack) {
long begin = System.currentTimeMillis();
callBack.execute();
long end = System.currentTimeMillis();
System.out.println("time used: " + (end - begin));
}
}
interface CallBack {
void execute();
}
class TestObject {
public static void testMethod() {
for (int i = 0; i < 10000; i++) {
System.out.println("i: " + i);
}
}
}