cn.hutool.core.lang.func.VoidFunc Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hutool-all Show documentation
Show all versions of hutool-all Show documentation
Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
package cn.hutool.core.lang.func;
import cn.hutool.core.exceptions.ExceptionUtil;
import java.io.Serializable;
/**
* 函数对象
* 接口灵感来自于ActFramework
* 一个函数接口代表一个一个函数,用于包装一个函数为对象
* 在JDK8之前,Java的函数并不能作为参数传递,也不能作为返回值存在,此接口用于将一个函数包装成为一个对象,从而传递对象
*
* @author Looly
*
* @param 参数类型
* @since 3.1.0
*/
@FunctionalInterface
public interface VoidFunc
extends Serializable {
/**
* 执行函数
*
* @param parameters 参数列表
* @throws Exception 自定义异常
*/
@SuppressWarnings("unchecked")
void call(P... parameters) throws Exception;
/**
* 执行函数,异常包装为RuntimeException
*
* @param parameters 参数列表
*/
@SuppressWarnings("unchecked")
default void callWithRuntimeException(P... parameters){
try {
call(parameters);
} catch (Exception e) {
throw ExceptionUtil.wrapRuntime(e);
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy