在C#中,處理異常的最佳方法是使用try-catch
語句塊。當您預計某個代碼塊可能會引發異常時,可以將其放在try
塊中。如果在try
塊中的代碼引發了異常,程序將立即跳轉到與該異常類型匹配的catch
塊中。
以下是一個簡單的示例,說明如何在C#中使用try-catch
處理異常:
using System;
class Program
{
static void Main()
{
try
{
// 嘗試執行可能引發異常的代碼
int result = Divide(10, 0);
Console.WriteLine("Result: " + result);
}
catch (DivideByZeroException ex)
{
// 處理特定的異常類型
Console.WriteLine("Error: Division by zero is not allowed.");
}
catch (Exception ex)
{
// 處理其他類型的異常
Console.WriteLine("Error: " + ex.Message);
}
finally
{
// 無論是否發生異常,都會執行的代碼塊
Console.WriteLine("Operation completed.");
}
}
static int Divide(int numerator, int denominator)
{
return numerator / denominator;
}
}
在這個示例中,我們嘗試執行一個除法操作,該操作可能會引發DivideByZeroException
異常。我們將這個可能引發異常的代碼放在try
塊中。如果發生異常,程序將跳轉到與該異常類型匹配的catch
塊中。在這個例子中,我們有兩個catch
塊:一個用于處理DivideByZeroException
,另一個用于處理其他類型的異常。最后,我們使用finally
塊來執行一些無論是否發生異常都需要執行的代碼。