finally 语句的目的是确保即使在引发异常的情况下也能立即进行必要的对象(通常是正在占用外部资源的对象)清理。此类清理功能的一个示例是在使用后立即对 FileStream 调用 Close,而不是等待公共语言运行库对该对象进行垃圾回收,如下所示:

C# CopyCode image复制代码
static void CodeWithoutCleanup()
{
    System.IO.FileStream file = null;
    System.IO.FileInfo fileInfo = new System.IO.FileInfo("C:\\file.txt");

    file = fileInfo.OpenWrite();
    file.WriteByte(0xF);

    file.Close();
}

Expand 图像示例

Expand image请参见