1
3
Joshua Bloch在“高效Java”中总结道:
你可以在谷歌图书上找到这本书的相应片段(“第57项:仅在特殊情况下使用例外”)。 除了异常滥用可能导致难以理解的代码之外,Bloch还有一些对当今JVM实现有效的原因:
在(Hotspot)JVM的情况下,创建一个异常是非常昂贵的(想想生成的stacktrace)。 |
2
1
来自.Net Framework Development Guidelines : 如果可能的话,不要对正常的控制流程使用例外情况。 除了系统故障和具有潜在竞争条件的操作外,框架设计者应该设计API,以便用户可以编写不引发异常的代码。例如,您可以提供一种在调用成员之前检查先决条件的方法,这样用户就可以编写不引发异常的代码。 用于检查另一个成员的前提条件的成员通常被称为测试人员,而实际完成工作的成员被称为实干家。 在某些情况下,Tester-Doer模式可能会产生不可接受的性能开销。在这种情况下,应该考虑所谓的Try-Parse模式(有关更多信息,请参阅异常和性能)。 |
3
0
使用异常通常会导致更高的开销,滥用它们可能会降低应用程序的速度。什么都没有 异常 关于在查询中找不到记录,所以我肯定建议返回null。 所以不,对正常的控制流使用异常不是一个好的做法。 |
Vedant · 如何解决python啦啦队长问题?[已关闭] 2 年前 |
cobby · 在战略模式中使用工厂模式? 2 年前 |
Nobody · Java中带while循环的三角形模式 2 年前 |
Eduard Stefanescu · 如何在层之间传输异常? 6 年前 |
D. Schreier Talha Noyon · 对于目录中的每个类 6 年前 |
Tanvi Jaywant · 如何重载类 6 年前 |