最近,我正在研究抛出我们自己的异常,我想也许我们可以用它来检查“可疑”代码,然后在块if-else
中处理它。if
在相应的else
块中,我们可以继续进行,就好像没有出现异常一样。
我知道使用语句来尝试捕获所有异常可能有点困难,if
但这是可能的。另外,我想它在内存使用方面也会更好,因为我听说try-catch
块在内存使用方面非常昂贵。
最近,我正在研究抛出我们自己的异常,我想也许我们可以用它来检查“可疑”代码,然后在块if-else
中处理它。if
在相应的else
块中,我们可以继续进行,就好像没有出现异常一样。
我知道使用语句来尝试捕获所有异常可能有点困难,if
但这是可能的。另外,我想它在内存使用方面也会更好,因为我听说try-catch
块在内存使用方面非常昂贵。
实际上在旧语言中没有try...catch
关键字,您应该始终使用自己的方式来处理异常(是的,if-else
可以使用)。
但是今天在像 Java 这样的语言中,由于检查异常,有些代码你必须使用 try/catch。因此,根据语言和您正在编码的内容,您不能完全停止使用try...catch
块。
http://en.wikipedia.org/wiki/Exception_handling#Checked_exceptions
异常由JVM处理;客户不可能忽略已检查的异常。
您可以添加任何您喜欢的“可疑”代码验证,但您仍应在需要时使用 try/catch。
写出正确的 Java 习语。我认为您的方案没有任何优势,并且可能会让任何必须在您之后维护您的代码的人感到困惑。(那个可怜的人甚至可能在 6-12 个月后就是你。)
Try / Catch 的想法是它“捕获”您可能错过的任何专门编码的错误。我个人认为您应该尝试为您可以预见的所有条件显式编码,然后使用 Try/Catch 来处理您没有预见到的错误(并且总会有一些错误)。