java 常見異常種類(Java Exception):
算術異常類:ArithmeticExecption
空指針異常類:NullPointerException
類型強制轉換異常:ClassCastException
數組負下標異常:NegativeArrayException
數組下標越界異常:ArrayIndexOutOfBoundsException
違背安全原則異常:SecturityException
文件已結束異常:EOFException
文件未找到異常:FileNotFoundException
字符串轉換為數字異常:NumberFormatException
操作數據庫異常:SQLException
輸入輸出異常:IOException
方法未找到異常:NoSuchMethodException
常見異常類為兩大類型:Throwable是java異常的根類分為兩大子類Error和Exception, Error類代表了編譯和系統的錯誤,不允許捕獲;Exception類代表了標准Java庫方法所激發的異常。Exception類還包含運行異常類Runtime_Exception和非運行異常類Non_RuntimeException這兩個直接的子類。
今天主要談談自定義異常
為什么要自定義異常。
我們不可能期待JVM(Java虛擬機)自動拋出一個自定義異常,也不能夠期待JVM會自動處理一個自定義異常。所以發現異常以及異常處理還是得我們自己完成。所以我們要想做好一件事得先了解它是怎么產生的。
自定義異常的實例:
package text; //自定義一個異常繼承RuntimeException異常 public class Exception extends RuntimeException { public Exception() { super("自定義一個異常類"); } } // 模擬服務器異常登錄 public class ConnectionServer { private final String ID = "123456"; private final String password = "guoxiao"; public void connect(String ID, String password) throws Exception { if (this.ID != ID || this.password.equals(password)) { throw new Exception(); // 模擬失敗過程然后方法內部拋出異常 } } } // 模擬登錄過程 public class LoginText { public static void main(String[] args) { LoginText laozhu = new LoginText(); laozhu.login("556ssa", "553xha"); // 創建一個老朱對象,然后登陸,讓服務器返回一個異常。 } public void login(String ID, String password) { ConnectionServer connectionServer = new ConnectionServer(); try { connectionServer.connect(ID, password); } catch (Exception e) { System.out.println(e.getMessage()); } } }
不用try{ }catch(){}處理的輸出結果
用try{}catch(){}處理的輸出結果
www.zhiliaotang.com 請關注知了堂學習更多的java知識