假设您正在运行程序,
它符合“THROW”声明......会发生什么? 程序会停止吗?会继续吗?
什么是“最终”?
请用简单的词语表达我的理解
答案 0 :(得分:1)
如果程序meeets throw
指示它将抛出异常。
您的应用程序是停止还是继续运行取决于您处理该异常,而不是catch
指令。
finally
被引入保证在该块内执行包含代码或者抛出异常。
答案 1 :(得分:1)
请参阅此处的抛出MSDN文档:http://msdn.microsoft.com/en-us/library/1ah5wsex.aspx
简而言之,throw
引发了异常。如果您处于try-catch块中,那么它将被捕获,否则您的程序可能会崩溃。
finally
块在try-catch
块之后执行,无论是否存在抛出(并被捕获)的异常。
答案 2 :(得分:1)
throw语句用于在程序执行期间发出异常情况(异常)的信号。通常,throw语句与try-catch或try-finally语句一起使用。抛出异常时,程序会查找处理此异常的catch语句。
finally块对于清理try块中分配的任何资源以及运行任何必须执行的代码(即使存在异常)也很有用。无论try块如何退出,控制总是传递给finally块。
投掷:http://msdn.microsoft.com/en-us/library/1ah5wsex(v=vs.80).aspx
最后:http://msdn.microsoft.com/en-us/library/zwc8s4fz(v=vs.80).aspx
答案 3 :(得分:1)
您可以在此处找到大量信息:
http://msdn.microsoft.com/en-us/library/ms173160(v=vs.80).aspx
例外具有以下属性:
- 当您的应用程序遇到异常情况时,例如除以零或内存不足警告时,会生成异常。
- 在可能引发异常的语句周围使用try块。
- 在try块中发生异常后,控制流会立即跳转到关联的异常处理程序(如果存在)。
- 如果没有给定异常的异常处理程序,程序将停止执行并显示错误消息。
- 如果catch块定义了异常变量,您可以使用它来获取有关发生的异常类型的更多信息。
- 使用try关键字执行可能导致异常的操作。
- 异常处理程序是发生异常时执行的代码块。在C#中,catch关键字用于定义异常处理程序。
- 使用throw关键字的程序可以显式生成异常。
- 异常对象包含有关错误的详细信息,包括调用堆栈的状态和错误的文本描述。
- 即使抛出异常,也会执行finally块中的代码,从而允许程序释放资源。