異常靈魂四問
異常靈魂四問
-
1.若try沒遇到問題怎麼執行
- 會把try中所有程式碼執行完畢,並且不會執行catch中的程式碼
- 只有出現異常才執行catch中的程式
-
2.若try可能會遇到多種問題,怎麼執行?
- 會寫多個catch來對應
- detail:若要捕獲多個異常,這些異常中若存在父子關係那麼父類一定要寫在下面
因為多態的原因,好比第一個岔路口就抓到小偷了,後面的補快就用不上了
Exception e = new ArrayIndexOutOfBoundsException();
-
3.若try中遇到的問題沒被捕獲,怎麼執行
- 相當於你try...catch白寫了,最後還是交給虛擬機處理
-
4.若try遇到問題那麼try下面的代碼還會執行嗎?
- 不會,會直接跳到對應的catch中
- 如果沒有對應的catch,還是會交給虛擬機處理