java回调函数怎么写接口使用
时间: 2024-09-25 18:09:58 浏览: 33
Java 回调函数详解及使用
在Java中,回调函数是一种设计模式,通常用于将一个任务作为参数传递给另一个对象,并让这个接收者对象在合适的时候执行该任务。这种模式常常用接口(Interface)或者匿名内部类的形式实现。
例如,假设有一个`TaskExecutor`接口,它定义了一个执行任务的方法`execute(Task task)`:
```java
public interface TaskExecutor {
void execute(Task task);
}
```
然后我们可以创建一个需要在某个时间点被调用的`MyTask`类,并将其作为回调:
```java
class MyTask implements Runnable {
private String result;
// ... 实现run()方法
@Override
public void run() {
// 执行具体的任务并存储结果
result = "Task executed";
}
// 获取任务执行结果的方法
String getResult() {
return result;
}
}
// 在另一个地方,如按钮点击事件处理中使用回调
Button button = new Button();
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
TaskExecutor executor = new TaskExecutorImpl(); // 创建实际执行任务的对象
executor.execute(new MyTask()); // 将任务作为参数传递
}
});
```
在这个例子中,当按钮被点击时,`actionPerformed()`方法会被调用,它会创建一个`TaskExecutorImpl`实例并执行`MyTask`的任务。这种方式使得调用者无需关心具体如何执行任务,只需提供一个执行它的接口。
阅读全文