为预处理和 post 处理创建通用 Java 方法包装器
Create generic Java method wrapper for pre and post processing
我基本上是在尝试创建一个静态方法,它将作为我传递的任何方法的包装器,并将在方法本身的实际执行之前和之后执行某些操作。我更愿意使用 Java 8 种新的编码风格。到目前为止,我有一个 class 有一个静态方法,但我不确定参数类型应该是什么,所以它可以采用任何方法和任何类型的参数然后执行它。就像我提到的,我想在方法执行之前和之后做一些事情。
例如:executeAndProcess(anyMethod(anyParam));
您的方法可以接受一个 Supplier
实例和 return 它的结果:
static <T> T executeAndProcess(Supplier<T> s) {
preExecute();
T result = s.get();
postExecute();
return result;
}
这样称呼它:
AnyClass result = executeAndProcess(() -> anyMethod(anyParam));
我基本上是在尝试创建一个静态方法,它将作为我传递的任何方法的包装器,并将在方法本身的实际执行之前和之后执行某些操作。我更愿意使用 Java 8 种新的编码风格。到目前为止,我有一个 class 有一个静态方法,但我不确定参数类型应该是什么,所以它可以采用任何方法和任何类型的参数然后执行它。就像我提到的,我想在方法执行之前和之后做一些事情。
例如:executeAndProcess(anyMethod(anyParam));
您的方法可以接受一个 Supplier
实例和 return 它的结果:
static <T> T executeAndProcess(Supplier<T> s) {
preExecute();
T result = s.get();
postExecute();
return result;
}
这样称呼它:
AnyClass result = executeAndProcess(() -> anyMethod(anyParam));