能否请您告诉我以下两个代码块中哪种方法更好?
catch (MyException e) {
throw new MyException ("Error processing request", e);
}
或者
catch (MyException e) {
throw e;
}
最佳答案
为了比较两种方法,他们应该做同样的事情。这两个不做同样的事情。
第一种方法会更好,因为您可以将其消息更改为对用户更友好的消息。也许您还可以在重新抛出它之前记录它(堆栈跟踪或其他...)。
第二种方法在性能方面更好。实际上,如果您根本不捕获异常并让它自行抛出会更好。
您必须根据用户体验以及可能的日志记录或性能来选择更可取的。 默认情况下(并不总是)我会选择第一个。
希望我有所帮助!
关于java - 捕获异常并抛出相同的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20965712/