java - 捕获异常并抛出相同的异常?

标签 java exception

能否请您告诉我以下两个代码块中哪种方法更好?

catch (MyException e) {
    throw new MyException ("Error processing request", e);
}

或者

catch (MyException e) {
    throw e;
}

最佳答案

为了比较两种方法,他们应该做同样的事情。这两个不做同样的事情

第一种方法会更好,因为您可以将其消息更改为对用户更友好的消息。也许您还可以在重新抛出它之前记录它(堆栈跟踪或其他...)。

第二种方法在性能方面更好。实际上,如果您根本不捕获异常并让它自行抛出会更好。

您必须根据用户体验以及可能的日志记录或性能来选择更可取的。 默认情况下(并不总是)我会选择第一个

希望我有所帮助!

关于java - 捕获异常并抛出相同的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20965712/

相关文章:

c++ - 声明 POD 类型会抛出异常吗?

c# - SQL Like 语句 : Cannot convert a char value to money. char 值的语法不正确

java - Ajax 调用 404 未找到

java - Android Studio - 从膨胀 View 自动创建 java 类变量

java - 如何定义抛出通用异常类型的接口(interface)?

java - AWS SDK V2 S3 提取对象未提取超过 1000 个的对象

python - 打破无限循环的正确 Python 异常(不应该是无限的)

java - 如何在java中比较两个CSV文件的数据(逐行)

exception - 系统.IO.FileLoadException。无法加载辅助功能,版本 = 2.0.0.0

json - Azure Durable Functions我应该如何处理TaskFailedExceptionDeserializationException