編譯器所產生的例外狀況

基本作業失敗時,.NET 執行階段會自動擲回一些例外狀況。 下表列出這些例外狀況和其錯誤條件。

例外狀況 描述
ArithmeticException 在算術運算期間所發生的例外狀況 (例如 DivideByZeroExceptionOverflowException) 的基底類別。
ArrayTypeMismatchException 陣列因項目的實際型別與陣列的實際型別不相容而無法儲存指定的元素時擲回。
DivideByZeroException 嘗試將整數值除以零時擲回。
IndexOutOfRangeException 索引小於零或超出陣列界限時嘗試編製陣列的索引時擲回。
InvalidCastException 從基底型別到介面或衍生型別的明確轉換在執行階段失敗時擲回。
NullReferenceException 嘗試參考值為 null 的物件時擲回。
OutOfMemoryException 嘗試使用 new 運算子配置記憶體失敗時擲回。 此例外狀況表示 Common Language Runtime 的可用記憶體己用完。
OverflowException checked 內容中的算術運算溢位時擲回。
StackOverflowException 在因太多暫止方法呼叫而耗盡執行堆疊時擲回;通常表示非常深或無限遞迴。
TypeInitializationException 在靜態建構函式擲回例外狀況而且沒有相容的 catch 子句可攔截它時擲回。

另請參閱