一、異常類
1.所有異常對象的父類都是Exception
2.關鍵詞:
try{
//可能出現異常的代碼
}catch(Exception e){
//捕捉到異常後執行的代碼
}finally{
無論是否捕捉到異常,都執行該段代碼
}
3.關於異常類的知識點:
- 異常處理機制可以讓異常出現時代碼還能正常運行
- try中一旦拋出了異常則由catch捕捉後執行catch的代碼
- finally中的代碼一定會執行,只有一種情況不會執行(虛擬機被關閉,虛擬機關閉代碼System.exit(0))
- 可以有多個catch來捕獲多個精確的異常
- 處理異常的原則:誰使用誰處理
- 異常不能拋給虛擬機,儘量在首次調用時就解決
4.異常拋出(throws throw):
- throws 聲明該方法可能拋出某個或多個異常
throw 拋出某個異常
class Person{ public void test() throws Exception{ // 聲明該方法會拋出異常 String name = null; if(name.equals("admin")){ // } } } class Person{ public void test() throws Exception{ throw new Exception("被拋出的異常"); } }
5.自定義異常
class MyException extends Exception{
public MyException(){
super("這是自定義的異常");
}
}
6.RuntimeExcepiton
- RuntimeExcepiton 叫做 運行時異常
- 此異常不需要throws聲明,也可以不用try/catch來捕捉,可拋給虛擬機(只有在虛擬機正常運行時)