程序在執(zhí)行過程中發(fā)生的錯(cuò)誤臂容。常見的異常
文件找不到
文件操作權(quán)限不足
網(wǎng)絡(luò)無法連接
數(shù)組越界
算術(shù)除0
ArgumentException 參數(shù)錯(cuò)誤:方法的參數(shù)無效
ArgumentNullException 參數(shù)為空:給方法傳遞一個(gè)不可接受的空參數(shù)
ArithmeticException 數(shù)學(xué)計(jì)算錯(cuò)誤:由于數(shù)學(xué)運(yùn)算導(dǎo)致的異常攻泼,覆蓋面廣
DivideByZeroException 被0除
FormatException 參數(shù)的格式不正確
IndexOutOfRangeException 索引超出范圍,小于0或比最后一個(gè)元素索引大
NullReferenceException 引用為null的對象
StackOverflowException 堆棧已滿
OverflowException 溢出
OutOfMemoryException 無法為新語句分配內(nèi)存時(shí)引發(fā)異常,內(nèi)存不足
InvalidCastException 非法強(qiáng)制轉(zhuǎn)換魂那,顯示轉(zhuǎn)換失敗時(shí)引發(fā)
EndOfStreamException 讀到文件末尾而引發(fā)的。
try塊包含的代碼組成了程序的正常操作部分龟梦,但可能遇到某些嚴(yán)重的錯(cuò)誤情況焙蹭。 try只有1個(gè);finally 只有1個(gè)或0個(gè)
catch 可以有0個(gè)(必須有一個(gè)finally),可以有多個(gè)try有且僅有一個(gè)柑贞,catch和finally至少一個(gè)方椎,finally至多一個(gè),catch可以有多個(gè)
finally總會執(zhí)行
catch捕獲的異常類钧嘶,派生程度最高的在最末位
掌握如何捕獲異常棠众、拋出異常,學(xué)會自定義異常