何时使用多捕获以及何时使用重新抛出?

LaB*_*lum 5 java rethrow multi-catch

我对这两个主题非常不确定.我知道我应该使用multi-catch来处理需要以相同方式处理的异常.但出于什么目的,我真的需要这样的东西.

private void something(String name) throws IOException, RemoteException {
    try {
        ...
    } catch (Exception ex) {

        ... // do something

        throw ex;
    }
}
Run Code Online (Sandbox Code Playgroud)

dav*_*xxx 3

如果您考虑到此方法在其执行期间引发的任何异常都应以相同的方式处理,并且您希望在将异常传播到客户端之前执行任务,则可以这样做

例如,假设您希望在异常发生时执行特定处理,例如记录信息。所以你抓住它来做这个任务。
尽管如此,您认为捕获的异常是一个问题,并且记录它并不是异常的“真正”处理。因此,您可以通过重新抛出它来让它传播。