Java的例外指的是程式執行時, 發生中斷導致不能正常執行
而所有的錯誤都會被包成Throwable物件, 這時可以用try catch來進行處理
主要的子類別有兩種, 一種是Error指的是系統錯誤, 像是記憶體不足OOM之類的
另一種就是Exception, 就是我們要處理的部分, 像是常見的IOException
基本的使用就是用try包住程式碼, 用catch來處理例外,
其中在try中某行發生例外時, 下方的程式碼便不會執行
會直接跳到catch的部分, 如果有finally的區塊則必定會執行

使用時就是利用
try{
//會發生例外的敘述
}catch (Exception的類型 變數名稱){
//在這部分處理
}
的形式來執行, 其中可以有多個catch
try{
//會發生例外的敘述
}catch (Exception的類型1 變數名稱){
//在這部分處理
}catch (Exception的類型2 變數名稱){
//在這部分處理
}catch (Exception的類型3 變數名稱){
//在這部分處理
}

這邊要注意的是越是父類別的Exception要放在下面
而且上方被catch後下方的就不會執行

在JDK7以後, 多了multi-catch的功能
可以使用 | 來進行處理
讓程式碼更可讀
try{
//會發生例外的敘述
}catch (Exception的類型1 | Exception的類型2 | Exception的類型3 變數名稱){
//在這部分處理
}

最後, 有個finally區塊必定會執行的表現方式
try{
//會發生例外的敘述
}catch (Exception的類型 變數名稱){
//在這部分處理
}finally{
//不論是走完try或是執行到catch
//必定會執行內部的程式碼
}

 

 

1. 官網https://docs.oracle.com/javase/tutorial/essential/exceptions/definition.html

01.png

 

2. 參考網頁https://openhome.cc/Gossip/Java/ThrowableHierarchy.html

02.png  

arrow
arrow

    RX1226 發表在 痞客邦 留言(0) 人氣()