Java 8 的新手,我想优化我的代码如下:
public Response create() {
try{
...
} catch (Exception e) {
codeA;
} finally {
codeB;
}
}
public Response update() {
try{
...
} catch (Exception e) {
codeA;
} finally {
codeB;
}
}
我有很多方法使用相同的方式来捕获异常并最终执行相同的操作,是否可以用 Java 8 中的方法替换下面的通用代码?这样我就可以优化使用此公共(public)代码的所有方法。
} catch (Exception e) {
codeA;
} finally {
codeB;
}
最佳答案
取决于您在 ...
中执行的操作。你可以这样做:
private Response method(Supplier<Response> supplier) {
try{
return supplier.get();
} catch (Exception e) {
codeA;
} finally {
codeB;
}
}
并像这样调用:
public Response create() { return method(() -> { ... for create }); }
public Response update() { return method(() -> { ... for update }); }
关于java - 如何将 catch finally 重组为 Java 8 中的一种方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54041246/