文章目录
一、回调机制的基本原理
1. 什么是回调?
回调的核心思想是:将一个函数(回调函数)作为参数传递给另一个函数,当某个任务完成时,自动调用这个回调函数来处理结果。回调机制的本质是“异步通知”,即任务完成后通知调用者处理结果,而不是让调用者主动轮询任务状态。
2. 回调的核心特点
- 异步执行:任务在后台执行,不会阻塞主线程。
- 事件驱动:任务完成后自动触发回调函数。
- 解耦合:将任务执行和结果处理分离,提高代码的可维护性。
3. 回调的典型应用场景
- 网络请求:如 HTTP 请求完成后处理响应数据。
- 文件读写:如文件读取完成后处理文件内容。
- 定时任务:如定时器触发后执行特定逻辑。
- 多线程任务:如线程池中的任务完成后通知主线程。
二、回调机制的实现
以下是一个简单的 Java 示例,演示了回调机制的基本实现。
1. 定义回调接口
首先,定义一个回调接口,用于处理任务完成后的逻辑:
// 回调接口
interface Callback {
void onComplete(String result); // 任务完成后调用的方法
void onError(Exception e); // 任务出错时调用的方法
}
2. 实现异步任务
接下来,实现一个异步任务类,任务完成后调用回调接口的方法:
class AsyncTask {
public void execute(Callback callback) {
new Thread(() -> {
try {
// 模拟耗时操作
Thread.sleep(1000);
String result = "Task Completed!";
// 任务成功,调用 onComplete
callback.onComplete(result);