Java面試總結——異常處理

1.finally塊中的代碼是什麼時候被執行?

finally塊的作用就是爲保證無論出現什麼情況,finally塊裏的代碼一定會被執行,finally執行也在return之前。如果try-finally,catch-finally中都有return,那麼finally中的return將會覆蓋別處的return語句。對於基本數據類型,finally改變return的值對返回值沒有什麼任何影響,而對引用類型由影響。

2.異常處理的原理是什麼

異常是指程序運行時(非編譯時)所發生的非正常情況或錯誤,JVM就會將出現的錯位表示爲一個異常並拋出。這個異常可以在catch程序塊中進行捕獲,然後進行處理。
Throwable(父類)-------Error
|------------Exception

3.運行時異常和普通異常的區別
檢查異常 運行時異常
編譯階段 運行階段
強制 非強制
不會導致程序出錯,進行處理後可以繼續執行後續操作 線程中止
IO異常 NullPointerException
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章