我应该在记录后重新抛出异常吗?

时间:2016-08-19 16:48:51

标签: java exception-handling

我发现自己的编码方法会抛出指定的错误,但仍然围绕try catch中的相关代码部分,我使用catch来记录本地化的错误消息并重新抛出主要错误消息。

这是一个简短的例子:

public void doWork(String url) throws IOException {
    Object target;
    try {
        target = new target(url);  //instantiating this object could potentially not work if the URL is malformed
    } catch (MalformedURLException e) {
        localErrorMessage(debug, "URL error here");  //log a local message
        throw e;
    } catch (IOException e) {  //in some cases it can throw an IO exception if using a localised file type object.
        localErrorMessage(debug, "IO error here");  //log a local message           throw e;
    }
}

我使用它,因为我可以关闭我的本地化日志记录(使用log4j2),或在测试期间使用它作为调试方法。

这是一种合理的做法,还是有更好的方法呢?

0 个答案:

没有答案