![]() |
1
15
当捕获异常并引发RuntimeException时,重要的是将原始异常设置为RuntimeException的原因。即
否则你一开始就不知道是什么问题。 |
![]() |
2
2
将选中的异常重新引发为未选中的异常,只有在 当然 检查的异常不是预期的。 下面是一个典型的例子:
|
![]() |
3
1
你的想法是对的。关于抛出runtimeexception的建议是,它不需要调用方使用try块或“throws”子句。 如果你的代码 可以 从异常中恢复,而不是它真正应该捕获它而不抛出任何东西。 |
![]() |
4
1
关于例外的第一条规则之一是不要滥用它们来在您的申请中通过状态。它们应该用于特殊情况,而不是作为可选的返回值。
第二条规则是在处理异常的级别捕获异常。捕获和重新传输不会增加太多内容。方法中的任何清理代码都应在
在我看来,捕获已检查的异常并将其作为运行时异常重新引发正在滥用系统。它感觉像是在按合同设计的“限制”周围工作,而不是使用这些“限制”来获得更健壮的应用程序。 |
![]() |
5
1
是否要处理一个异常,或者只是简单地重新执行它取决于您的用例。 例如,如果您正在读取一个文件以将数据加载到应用程序中,并且发生了一些IO错误,则不太可能从错误中恢复,因此将错误重新发送到顶部,从而终止应用程序并不是一个坏的操作过程。
相反,如果您预期的是可恢复的错误,那么您应该完全捕获并处理这些错误。例如,您可以让用户在表单中输入数据。如果输入数据不正确,输入处理代码可能会引发异常(例如
另外一个注意事项是,用
例如,假设您的代码是解析文件中的配置数据。显然,可能会发生IO错误,因此您必须
|
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 3 月前 |
![]() |
rudraraj · java中未声明最终变量 4 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |