定义自定义异常有什么好处?

use*_*949 6 java custom-exceptions

在Java中定义客户异常的任何重要原因?

And*_*yle 12

立即想到两个原因:

  1. 简单地说try { ... } catch (Exception e) { ... },您不要说- 拥有自己的子类可以让您分别处理不同的异常情况.(例如,没有运行报表的权限与报表执行失败之间的区别).
  2. 您可以添加额外的上下文 - 例如,如果您有自己的上下文,例如AlreadyLoggedInException,该异常可以有一个方法来检索启动其他会话的IP地址.或者AccountLimitExceededException可以包含当前帐户限制.异常中的额外信息使您可以在捕获时获得更明智的响应.

  • 您能否提供一个可行的示例,以便我更清楚地了解? (2认同)