读Thinking in java 时,发现有”回调函数“这个名称。这让我想起在刚学javascript的时候,常常听到‘回调函数’,可是不知道什么意思。知道今天,走了一段路后休憩了一下,做一下整理。
百度百科上说:“回吊函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。”
这里我按上面的意思,根据自己的理解,写了一个例子:
先写一个接口,当做指针:
package com.lzw.callbackfunction;
public interface CallBack {
void execute();
}
然后写回调函数,并进行测试:
package com.lzw.callbackfunction;
public class TestCallBack {
public void testCB(CallBack cb){
System.out.println("execute before ....");
cb.execute();
System.out.println("execute after .....");
}
public static void main(String[] args) {
new TestCallBack().testCB(new CallBack(){
public void execute(){
System.out.println("...I am executing ...");
}
});
}
}