《C#異常處理》<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1、c#中所有的異常處理都被視爲類,所有異常都是由System.Exception所派生的。
2、C#中處理錯誤異常管理的關鍵字指令有四個:try、catch、throw、finally,有這四個關鍵字所編寫的異常處理功能非常的強大與方便。
3、異常處理的語法:try{有可能產生錯誤的代碼}catch(異常處理聲明(聲明此catch區段要捕獲哪一種類型的異常錯誤,可以不用聲明,這樣子便會讓catch去捕獲任意類型的異常錯誤)){異常處理程序代碼(當catch捕獲到異常錯誤後,所採取對應的程序代碼)}注意:利用catch來捕獲try-catch中產生的異常錯誤,可以建立多個catch區段以捕獲不同類型的異常錯誤。
3、C#中常見異常類:
類 |
說明 |
OutOfMemoryException |
當利用new關鍵字去初始化分配一塊內存失敗時 |
StackOverflowException |
當執行程序有利用到堆棧資源時(通常是執行Recursion或太多的循環),將堆棧資源耗盡時 |
NullReferenceException |
當要利用Reference對象時,卻是NullReference |
TypeInitializationException |
若靜態對象發生錯誤,但又缺乏catch區段去處理與對應時 |
ArrayTypeMismatchException |
當存入數據與數組中數據類型不同時 |
IndexOutOfRangeException |
當超過數組的限定範圍時 |
MulticastNotSupportedException |
當要合併兩個委派對象失敗時 |
ArithmeticException |
一般在運算失敗時,這包含了DivideByzeroException與OverflowException兩種異常 |
DivideByzeroException |
當使用除法運算時,分母爲0所造成的錯誤時 |
OverflowException |
當運算後超過數據類型的合法範圍時 |