下面使用java回调函数来实现一个测试函数运行时间的工具类:
如果我们要测试一个类的方法的执行时间,通常我们会这样做:
java 代码
-
public
class
TestObject {
-
-
-
-
public
static
void
testMethod(){
-
for
(
int
i=
0
; i<
100000000
; i++){
-
-
}
-
}
-
-
-
-
public
void
testTime(){
-
long
begin = System.currentTimeMillis();
-
testMethod();
-
long
end = System.currentTimeMillis();
-
System.out.println("[use time]:"
+ (end - begin));
-
}
-
-
public
static
void
main(String[] args) {
-
TestObject test=new
TestObject();
-
test.testTime();
-
}
-
}
大家看到了testTime()方法,就只有"//测试方法"是需要改变的,下面我们来做一个函数实现相同功能但更灵活:
首先定一个回调接口:
java 代码
-
public
interface
CallBack {
-
-
void
execute();
-
}
然后再写一个工具类:
java 代码
-
public
class
Tools {
-
-
-
-
-
-
public
void
testTime(CallBack callBack) {
-
long
begin = System.currentTimeMillis();
-
callBack.execute();
-
long
end = System.currentTimeMillis();
-
System.out.println("[use time]:"
+ (end - begin));
-
}
-
-
public
static
void
main(String[] args) {
-
Tools tool = new
Tools();
-
tool.testTime(new
CallBack(){
-
-
public
void
execute(){
-
-
TestObject.testMethod();
-
}
-
});
-
}
-
-
}
大家看到,testTime()传入定义callback接口的execute()方法就可以实现回调功能
分享到:
相关推荐
- kidult:老顽童 - crook:恶棍/流氓 - crumb:人渣 - lazybones:懒骨头/懒汉 - trash:人渣/败类/废物 - dope:笨蛋! - dummy:笨蛋!傻瓜 - dweeb:白痴/笨蛋 - jerk:怪胎/笨蛋 9. **关于睡觉的说法...
- kidult:老顽童 - crook:恶棍/流氓 - crumb:人渣 - lazybones:懒骨头/懒汉 - trash:人渣/败类/废物 - dope:笨蛋! - dummy:笨蛋!傻瓜! 这些潮流英语词汇和表达方式反映了现代英语的多样性和生动性...
- 泡泡玛特和三丽鸥分别在各自的时代背景中崛起,三丽鸥是在日本的第三消费社会时期,而泡泡玛特则是顺应了我国近年个性化精神消费兴起、女性消费能力提升、成人孩子气(Kidult)消费倾向以及文化自信增强的社会特征...
MVIMG_20240702_172458.jpg
本程序是基于最小二乘的matlab实现,课运用于数据无损压缩,具有很好的效果。