try
{
// 可能拋出例外的程式碼
}
catch (FileNotFoundException fe)
{
// 具體例外優先
}
catch (IOException ioe)
{
// 較一般例外
}
catch
{
// 捕獲所有其他例外
}
finally
{
// 無論是否例外皆執行,常用於釋放資源
}
catch { } 等同 catch (Exception) { },捕獲所有例外。
public class InvalidDepartmentException : System.Exception
{
public InvalidDepartmentException(string department)
: base("Invalid Department: " + department) { }
}
if (!(dept == "Sales" || dept == "Marketing"))
throw new InvalidDepartmentException(dept);
Java 用 throws 聲明方法可能拋出的受檢例外,強制呼叫端處理。C# 移除此機制,所有例外均為 unchecked,提高靈活性但需開發者自行文檔化。