1、錯誤和異常
如果程序運行期間發生錯誤,異常就會發生。異常會中止當前的程序流,如果不采取措施,程序將停止運行。
錯誤和異常是兩個不同的概念,但它們都與程序的穩定性和可維護性有關。
1.1、錯誤
錯誤通常是指編譯時的語法錯誤、類型不匹配、資源不存在等問題。
錯誤處理:
檢查代碼,修正編譯錯誤。
確保所有資源文件都在正確的位置。
對于類型不匹配,確保賦值和方法調用中使用的數據類型一致。
1.2異常
異常是程序運行時出現的特殊事件,如程序中的Bug(如數字除以0)或某些意外輸入(用戶選擇不存在的文件),需要程序能夠處理這些問題,避免程序崩潰甚至暫停。
異常處理
使用try-catch塊捕獲可能發生的異常。
在catch塊中處理異常,比如給用戶友好的反饋,或者記錄日志。
使用finally塊進行清理操作,如關閉文件流等。
為可能拋出異常的代碼編寫單元測試,確保異常的正確拋出和捕獲。
2、try、catch、finally關鍵字
C#使用try、catch、finally關鍵字檢測異常,處理異常、并繼續運行,提高應用程序的可靠性。
示例
static void Main()
{int x=0,y=0;try{x=5/y;}catch(System.DivideByZeroException){System.Console.Writeline("There was an atempt to devide by zero.");}finally{System.Console.Writeline("Program is end.");}
}
3、使用異常處理
異常并不是程序發生災難性問題的標志,通常異常是方法不成功的信號。
class ProgramThrow
{static void DoWork(int x){if (x > 5){throw new System.ArgumentOutOfRangeException("X is too large");}}static void Main(){try{DoWork(10);}catch (System.ArgumentOutOfRangeException ex){System.Console.WriteLine(ex.Message);}}
}