java回调函数举例
时间: 2023-12-06 14:38:53 浏览: 32
Java回调函数是一种常见的编程模式,它允许我们将一个函数作为参数传递给另一个函数,并在需要时执行该函数。下面是一个Java回调函数的例子:
假设我们有一个主业务类MainBusiness,它需要执行一些操作,并在完成后执行回调函数。我们可以定义一个回调接口CallbackService,该接口包含一个回调函数callBackFunc()。然后我们可以创建一个具体的实现类CallbackServiceImpl,该类实现了CallbackService接口,并重写了回调函数callBackFunc()。最后,我们可以在测试类CallBckTest中创建一个MainBusiness对象,并调用它的execute()方法,将CallbackServiceImpl对象作为参数传递给它,从而实现回调函数的调用。
具体代码如下:
引用:
```
package com.callBack;
public class CallbackServiceImpl implements CallbackService {
@Override
public void callBackFunc() {
System.out.println("具体实现类回调函数开始执行...");
System.out.println("具体实现类回调函数结束执行...\n");
}
}
```
引用:
```
package com.callBack;
public class CallBckTest {
public static void main(String[] args) {
MainBusiness mainBusiness = new MainBusiness();
System.out.println("*********具体实现类实现的回调方法_固定*********");
mainBusiness.execute(new CallbackServiceImpl());
System.out.println("*********匿名内部类实现的回调方法_灵活*********");
mainBusiness.execute(new CallbackService() {
public void callBackFunc() {
System.out.println("匿名内部类回调函数开始执行...");
System.out.println("匿名内部类回调函数结束执行...\n");
}
});
}
}
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)