1. 程式人生 > >throw 和throws 關鍵字

throw 和throws 關鍵字

1.系統自動丟擲異常:

當程式中有邏輯錯誤、型別轉換錯誤時,系統自動丟擲異常,例如:

 

2 .throw 關鍵字丟擲異常

 

結果分析:

throw與throws的比較

1、throws出現在方法函式頭;而throw出現在函式體。 2、throws表示出現異常的一種可能性,並不一定會發生這些異常;throw則是丟擲了異常,執行throw則一定丟擲了某種異常物件。 3、兩者都是消極處理異常的方式(這裡的消極並不是說這種方式不好),只是丟擲或者可能丟擲異常,但是不會由函式去處理異常,真正的處理異常由函式的上層呼叫處理。

程式設計習慣:

1.在寫程式時,對可能會出現異常的部分通常要用try{...}catch{...}去捕捉它並對它進行處理; 2.用try{...}catch{...}捕捉了異常之後一定要對在catch{...}中對其進行處理,那怕是最簡單的一句輸出語句,或棧輸入e.printStackTrace(); 3.如果是捕捉IO輸入輸出流中的異常,一定要在try{...}catch{...}後加finally{...}把輸入輸出流關閉; 4.如果在函式體內用throw丟擲了某種異常,最好要在函式名中加throws拋異常宣告,然後交給呼叫它的上層函式進行處理。

參考: