異常處理的方式

2022-08-13 04:12:20 字數 1658 閱讀 9512

finally是個可選的,可以不寫

使用try將可能出現異常的**包裝起來,在執行過程中,一旦出現異常,就會生成乙個對應異常類的物件,根據此物件的型別,在catch中進行匹配

一旦try中的異常物件匹配到某乙個catch時,就進入catch中進行異常的處理

處理結束後,就跳出當前的try....catch結構(在沒有寫finally的情況下)

跳出try....catch結構,繼續執行其後的**

catch中的異常型別,如果沒有子父類關係,則宣告順序無所謂;若宣告型別滿足子父類關係,要求子類一定宣告在父類的上面,否則報錯

在try結構中宣告的變數,在出了try結構以後,就不能再被呼叫

try....catch....finally結構可以相互巢狀

public class test ;

try}catch (exception e)}}

結果

結果

throws + 異常型別

寫在方法的宣告處,指明此方法執行時,可能會丟擲的異常型別

當方法體執行時,出現異常,仍然會在異常**處生成乙個異常類的物件

此物件滿足throws後異常型別時,就會被丟擲

異常**後續的**不在執行

try.....catch.....finally:真正的將異常處理掉

throws:只是將異常拋給方法的呼叫者,並沒有真正的將異常處理掉

**實現

public class studenttest  catch (exception e) 

system.out.println(s);

}}class studentelse

}@override

public string tostring() ';}}

執行結果

提供全域性常量serialversionuid

過載的構造器

**實現

class myexception extends runtimeexception

public myexception(string message)

}public class studenttest catch (exception e)

system.out.println(s);

}}class studentelse

}@override

public string tostring() ';}}

執行結果

異常 try catch的方式處理異常2

package cn.itcast 01 a 乙個異常,前面已經講過了 b 二個異常的處理 a 每乙個寫乙個try.catch b 寫乙個try,多個catch trycatch 異常類名 變數名 catch 異常類名 變數名 注意事項 1 能明確的盡量明確,不要用大的來處理。2 平級關係的異常誰前...

linux C 異常處理的方式

目前遇到這樣的問題,大概在2000多台伺服器裡面有100多多台乙個c程序掛掉了,由於公司各種的流程除錯起來非常困難。這幾天google了下找到了一些資料,捕獲異常堆疊的,如 我有兩個疑慮 這篇文章裡面用的不知道linux各個版本核心是否是標準支援嗎?裡面還用到乙個命令addr2line,是否標準支援...

Spring 異常處理的幾種方式

目錄 1.exceptionresolver 1 defaulthandlerexceptionresolver 2 annotationmethodhandlerexceptionresolver 4 responsestatu ceptionresolver 2.spring boot增加的兩種...