为预处理和 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));