java中什么叫回调函数
时间: 2024-06-06 09:02:23 浏览: 15
Java中的回调函数是一种编程模式,也称为回调机制。它许将一段代码作为参数传递给另一个方法,并在需要时执行。回调函数通常用于异步编程或事件处理,可以将程序的控制权转移到回调函数上,以便在特定事件发生时执行相关的操作。
举个例子,假设我们有一个方法A,它需要执行一些操作,但是这些操作需要在另一个方法B完成后才能进行。我们可以将方法A作为参数传递给方法B,然后在方法B完成后调用方法A,这就是回调函数的基本思想。
下面是一个简单的Java回调函数的例子:
```java
public class CallbackExample {
public static void main(String[] args) {
Worker worker = new Worker();
worker.doWork(new Callback() {
@Override
public void onComplete() {
System.out.println("Work completed!");
}
});
}
}
interface Callback {
void onComplete();
}
class Worker {
public void doWork(Callback callback) {
// 模拟工作
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
// 工作完成后调用回调函数
callback.onComplete();
}
}
```
在这个例子中,我们定义了一个Worker类,它有一个doWork方法,该方法接受一个Callback对象作为参数。在doWork方法中,我们模拟了一些工作,并在工作完成后调用了回调函数的onComplete方法。
在main方法中,我们创建了一个Worker对象,并将一个匿名的Callback对象传递给它的doWork方法。当工作完成后,回调函数的onComplete方法将被调用,并输出"Work completed!"。
相关推荐
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)