Java異常
Java中的異常:又稱例外,是一個在程序執行期間發生的事件,它中斷正在執行程序的正常指令流
異常的分類:Throwable:類是java語言中所有錯誤或異常的超類,這意味著只要指示錯誤或異常,那么肯定是thrawble子類的實例,但是事實上由于錯誤異常內容過于龐大,所以設計人員將它們分開來,這就是thrawble的兩個子類,Error和Exception
- Error類是負責錯誤,它指程序運行的時候遇到硬件或操作系統的錯誤,這些錯誤都是嚴重并且致命的,是依靠程序自身無法解決的。
- Exception是運行時的錯誤,它可以被捕獲并處理(運行時異常:RuntimeException類及其子類異常,這些異常都是不檢查異常,程序中可以選擇捕獲處理,也可以不處理,這些異常一般由程序邏輯錯誤引起,程序應該從邏輯角度盡可能避免這類異常的發生。非運行時異常:RuntimeException以外的異常,類型上都屬于Exception類及其子類,從語法角度上講是必須處理的異常,如果不處理,程序就不能通過編譯)
常見異常
異常的處理 :通過5個關鍵字控制 try catch throw throws finally
- 捕獲異常 try里面的代碼越少越好 catch中必須含有內容,哪怕是簡單的提示
try{可能出現異常的代碼}catch(異常的類名 變量名){針對異常的處理方式}finally{釋放資源}
try{可能出現異常的代碼}catch(異常的類名 變量名){針對異常的處理方式}
try{可能出現異常的代碼}catch(異常的類名1 變量名){針對異常的處理方式}catch(異常的類名2 變量名){針對異常的處理方式}...
- 編譯期異常和運行期異常
運行期異常:代碼不夠嚴謹,需要修改代碼
編譯期異常:必須處理,否則編譯不通過
- Throwable
String getMessage() 詳細信息字符串
String toString() 返回異常的簡短描述
- throws 拋出異常 必須寫在方法聲明的后面 盡量不要在主方法上拋出異常
throws 異常類名
- throw 在方法內部主動拋出的異常
throw 異常的對象
- finally 保證資源一定得到釋放
try{可能出現異常的代碼}catch(異常的類名 變量名){針對異常的處理方式}finally{釋放資源}
- 自定義異常
繼承Exception(編譯期異常)
繼承RunTimeException(運行期異常)
throw和throws的區別
1.前者寫在方法內部 后者寫在方法聲明的后面
2.前者后面跟的是異常對象 后者跟的是異常類名
3.前者后面只能是一個異常對象 后者可以跟多個一場類名
final、finally、finalize的區別
final
- 修飾類 類不能被繼承
- 修飾方法 方法不能被覆蓋
- 修飾變量 變量為常量只能賦值一次
finally:異常處理中的組成部分,作用是釋放資源,放在finally中的代碼一定會執行
finalize:是Object類中的方法,用于垃圾回收
總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注服務器之家的更多內容!
原文鏈接:https://blog.csdn.net/weixin_45750514/article/details/119804612