Java中的回調(diào)函數(shù)是將一個函數(shù)作為參數(shù)傳遞給另一個函數(shù),使得在某些特定事件發(fā)生時,可以調(diào)用傳遞進(jìn)來的函數(shù)?;卣{(diào)函數(shù)通常用于異步編程或事件驅(qū)動編程中。
在Java中,回調(diào)函數(shù)通常通過接口來實現(xiàn)。例如,定義一個接口Callback:
public interface Callback {
void onCallback();
}
然后在某個方法中傳入Callback接口的實現(xiàn)類作為參數(shù):
public void doSomethingAsync(Callback callback) {
// 異步操作完成后調(diào)用回調(diào)函數(shù)
callback.onCallback();
}
使用回調(diào)函數(shù)的方式如下:
public class Main {
public static void main(String[] args) {
Callback callback = new Callback() {
@Override
public void onCallback() {
System.out.println("Callback executed");
}
};
doSomethingAsync(callback);
}
}
在上面的例子中,當(dāng)doSomethingAsync
方法執(zhí)行完異步操作后,會調(diào)用傳入的回調(diào)函數(shù),輸出"Callback executed"。這樣就實現(xiàn)了回調(diào)函數(shù)的功能。
回調(diào)函數(shù)的用法可以幫助解耦程序,使得代碼更加靈活和可擴展。