黑馬程序猿 JAVA基礎學習筆記 異常等

------Java培訓、Android培訓、iOS培訓、.Net培訓、期待與您交流! -------

------小弟在因特網的小窩,祝願所有的朋友身體健康-------


異常是JAVA對不正常對不正常情況作爲對象的描述;

他把JAVA中出現的問題都封裝爲對象;

問題分嚴重的和不太嚴重的;

嚴重的通過error類描述;

不太嚴重的通過exception描述;

他們都是thorwable的子類;

異常的處理:

try

catch

finally

一個方法可能出現異常時,定義時後面加throws 異常類;

調用這個方法的傢伙就必須處理這個異常;這是強制的;

處理的方式 要麼捕捉  要麼拋出去;

聲明異常時要儘量具體;

可以一次拋出多個異常;

catch只處理與其匹配的異常;

catch的執行順序是順序的順序的;

所以對應父類的catch要放在最下面;

catch不要做多餘的,不需要處理的不去處理;

異常處理時,一般不會輸出到控制檯,最好輸出到日誌文件,方便在應用環境中收集異常情況信息;


自定義異常:

JAVA中不認爲是異常,但我們認爲它是異常的東東,比如畢老師不允許除數是負數;

if(異常情形)throw new 自定義異常類;

函數內的拋出,必須處理;處理的可以suround try catch 也可以聲明throws;

輸出想要的信息,可以覆蓋getmessage方法;

自定義異常繼承exception 實現throwable;

throws和throw區別;一個用在聲明上  一個具體拋動作;

throw的是對象 throws的是類;

throw new 算數異常,構造參數丟入自定義的字符串,輸出就好看了;

runtime異常比較特殊,因爲他沒辦法實質處理,只能停止執行;

函數內拋出runtime或者他的子類不用在函數上聲明瞭;如果聲明瞭,調用者也無需處理;因爲此類異常,通常都需要程序停止執行;

無法繼續執行的異常,就讓他繼承runtime異常去吧;

異常分編譯時異常 運行時異常;

finally中存放一定會執行的代碼,例如關閉數據庫  關閉文件等等;

沒有異常也可以看做是一種異常;

3個常見格式:

try

catch


try

catch

finally


try

finally

子類拋異常時,可以拋父類拋過得或其子類的;

父類拋多個,子類只能拋個子集;

父類如果沒有拋出東西,子類在覆蓋時只能try catch不能拋;

catch中什麼都不寫是不好的;

throw了但是沒聲明  下面不能放語句 因爲可能執行不到  throw了就over了;

return和finlly後面都不適合放東西,執行不到的;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章