try try-block finally finally-block
其中: try-block
包含应引发异常的代码段。
finally-block
包含异常处理程序和清理代码。
备注
catch 用于处理语句块中出现的异常,而 finally 用于保证代码语句块的执行,与前面的 try 块的执行方式无关。示例
在此例中,有一个导致异常的无效转换语句。当运行程序时,您收到一条运行时错误信息,但 finally 子句仍继续执行并显示输出。// try-finally
using System;
public class TestTryFinally
{
public static void Main()
{
int i = 123;
string s = "Some string";
object o = s; try
{
// Invalid conversion; o contains a string not an int
i = (int) o;
} finally
{
Console.Write("i = {0}", i);
}
}
}
输出
发生以下异常:System.InvalidCastException
尽管捕捉了异常,但仍会执行包括在 finally 块中的输出语句,即:i = 123
其中: try-block
包含应引发异常的代码段。
finally-block
包含异常处理程序和清理代码。
备注
catch 用于处理语句块中出现的异常,而 finally 用于保证代码语句块的执行,与前面的 try 块的执行方式无关。示例
在此例中,有一个导致异常的无效转换语句。当运行程序时,您收到一条运行时错误信息,但 finally 子句仍继续执行并显示输出。// try-finally
using System;
public class TestTryFinally
{
public static void Main()
{
int i = 123;
string s = "Some string";
object o = s; try
{
// Invalid conversion; o contains a string not an int
i = (int) o;
} finally
{
Console.Write("i = {0}", i);
}
}
}
输出
发生以下异常:System.InvalidCastException
尽管捕捉了异常,但仍会执行包括在 finally 块中的输出语句,即:i = 123
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货