您不能忽略异常。
如果您没有捕获它,那么异常将传播到调用堆栈,直到有人捕获并处理它,或者它到达调用堆栈的顶部并且您的程序停止。
为了避免这种情况,您只需捕获异常并决定如何处理它。如果处理它意味着什么都不做,那么简单......当你捕获异常时什么都不做:
try
{
SomeFnWhichThrowsAnException();
}
catch
{
// NO-OP
}
Run Code Online (Sandbox Code Playgroud)
在// NO-OP(短的“无操作”)的评论是一个指标我用它来表示该异常的“处理”是刻意做什么,以避免任何人在将来读徐代码和解释方面的任何潜在误解一个空的 catch 块作为错误或疏忽。
应该提到的是,即使有评论和“很好的理由”对异常不做任何反应,这也是高度可疑的,并且是非常糟糕的代码味道。
专门忽略非常具体的异常或仅在特定情况下这样做可能更常见,但忽略所有可能的异常是非常不可取的(考虑到这将包括堆栈溢出或内存不足等异常)。