1 - 只处理异常,你 实际上可以做一些事情,和
2 - 你不能做任何事情,绝大多数的例外
a)我认为“By not handling an exception”
文本是建议我们应该让异常冒泡堆栈,在运行时会中止我们的应用程序?
b)但是为什么让运行时中止首选异常而不是捕获异常,将其记录下来,然后通知用户失败?两者之间的区别仅在于后者情况下,应用程序不会中止
例如,如果数据库出现故障,为什么整个程序崩溃(由于未处理异常),如果我们可以捕获异常,记录下来,并通知用户失败,这样我们可以保持程序正常运行。
2)如果你知道某些代码块可能引发的异常无法处理,你应该将此代码包含在try-finally
区块还是将它留在try-finally
区块之外更好?
谢谢
我不知道引号的全部内容。但我认为正确的解释是:(A)如果你是一个班级设计师,那么遵循这些规则。基本上,不'隐藏意外的例外。 (B)但如果您是*应用*开发者,那么这些规则不适用于您;如果你能帮助它,不要让你的程序崩溃。 – Detmar 2010-09-19 18:41:39