除了可以使用try…catch語句和try…catch…finally語句處理異常以外,還可以使用throws處理異常。
在開發中,有的時候我們沒有權限處理該異常,我們不知道該如何處理異常,或者不想處理異常,這種情況下我們可以將異常拋出,拋出給調用者處理。
throws處理異常的格式:
[存取權修飾符]傳回值型別方法名稱(參數清單)[throws異常類別名稱]{方法體;[return回傳值];}
注意事項:
1)拋出異常的處理方法千萬不能拋出給JVM處理[主方法]。
2)如果一個方法拋出的是一個編譯時異常,那麼呼叫者必須處理。
3)如果一個方法拋出的是一個運行時異常,可以處理也可以不處理,建議處理,提高程式的安全性。
4)子類別重寫的方法聲明的異常不能夠被擴大。
5)throws表示一種異常發生的可能性,可以宣告多個異常類別。
throw異常處理方法:
格式:throw異常物件;
注意:我們可以發現其實throw和throws的作用都是將異常拋出給調用者或虛擬機來處理,但是兩者有個根本區別就是throw拋出的是異常對象,而throws聲明的是異常類。
throw和throws區別:
1)throw拋出的是異常對象,throws聲明的是異常類別。
2)throw只能夠拋出一個對象,throws可以宣告多個異常類別。
3)throw表示異常已經發生,throws是一種異常的可能性。
4)throw在方法體內出現,throws在方法的聲明上。