java的回调函数

前言

希望在java里实现js的函数回调的效果,用于封装统一的异常处理逻辑。看了下函数式编程与lambda表达式,如下。

一、接口示例
@FunctionalInterface
interface Callback {
    public Object call(Object object) throws Exception;
}
二、实例
/**
 * 执行语句 捕捉异常 记录日志 发送邮件 任务重试
 *
 * @param object
 * @param callback
 * @return
 */
public Object exceptionHandler(Object object, String errorDescription, Callback callback) {
    while (true) {
        try {
            return callback.call(object);
        } catch (Exception e) {
            // 异常处理逻辑
        }
    }
}
三、调用
exceptionHandler(null, "errorDescription", (x) -> {
    // 语句块
    return ...;
});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容