Dis*_*ive 4 try-catch-finally c#-4.0
我假设我在这里遗漏了一些非常微不足道的东西,但由于理由这对我来说并不明显.我总是假设"最终"总是执行,无论是否有异常.
无论如何,这段代码无法运行,我不知道为什么.它到达i = i/j并抛出DivideByZero异常,但我认为它会继续并在停止之前执行finally语句.
static void Main(string[] args)
{
int i = 1;
try
{
int j = 0;
i = i / j;
Console.WriteLine("can't get");
}
finally
{
Console.WriteLine("finally ran");
}
}
Run Code Online (Sandbox Code Playgroud)
从上面的链接:
通常,当未处理的异常结束应用程序时,无论finally块是否运行都不重要.但是,如果在finally块中有语句,即使在这种情况下也必须运行,一种解决方案是在try-finally语句中添加一个catch块.
| 归档时间: |
|
| 查看次数: |
113 次 |
| 最近记录: |