在Java中,可以使用CompletableFuture來實現異步回調。CompletableFuture是Java 8新增的一個類,用于處理異步編程,可以簡化異步操作的處理過程。通過CompletableFuture可以進行異步任務的提交、執行、處理和獲取結果等操作。
下面是一個使用CompletableFuture實現異步回調的示例代碼:
import java.util.concurrent.CompletableFuture;
public class AsyncCallbackExample {
public static void main(String[] args) {
CompletableFuture.supplyAsync(() -> {
// 異步執行任務
return "Hello";
}).thenApply(result -> {
// 處理異步執行的結果
return result + " World!";
}).thenAccept(result -> {
// 處理最終的結果
System.out.println(result);
});
// 主線程繼續執行其他操作
System.out.println("Main thread continues...");
// 等待異步任務完成
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
上面的示例中,使用CompletableFuture.supplyAsync方法提交一個異步任務,然后通過thenApply方法處理異步任務的結果,并通過thenAccept方法處理最終的結果。在主線程中繼續執行其他操作后,通過調用Thread.sleep方法等待異步任務完成。這樣就實現了異步回調的功能。