您好,登錄后才能下訂單哦!
Java異常類型及處理方法是怎樣的,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
異常結構為:
Throwable
為頂級父類
子類Error
為嚴重報錯 ,
子類Exception
就是我們所說的異常了
java
中處理異常的有五個關鍵字: try
、catch
、finally
、 throw
、throws
throw
拋出異常 , thorws
聲明異常 , 捕獲異常 try_catch
public class SegmentFault { public static void main(String[] args) { /** * throw 拋出異常 * 格式 - throw new 異常類名(參數); * */ // 創建一個數組 int [] arr = { 2, 4, 56 ,5}; // 根據索引找到對應的元素 int index = 4; int element = getElement(arr,index); System.out.println(element); System.out.println("owo"); // 運行錯誤 無法繼續 } /** throw 拋出異常 提醒你必須處理 */ public static int getElement(int [] arr, int index){ // 判斷數組索引是否越界 if (index < 0 || index > arr.length -1){ /** * 條件滿足越界 當執行到throw拋出異常后就無法運行,結束方法并且提示 * */ throw new ArrayIndexOutOfBoundsException("數組下標越界異常"); } int element = arr[index]; return element; } }
異常結果為:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 數組下標越界異常
public class SegmentFault{ public static void main(String [] args){ read("a.txt"); } public static void read(String path) throws FileNotFoundException, IOException { if (!path.equals("a.txt")){ // 如果沒有a.txt // 如果不是 a.txt 該文件不存在 是一個錯誤 也就是異常 throw throw new FileNotFoundException("文件不存在"); } if (!path.equals("b.txt")){ throw new IOException("文件不存在"); } } }
異常結果為:
Exception in thread "main" java.io.IOException: 文件不存在
try
、catch
、finally
+ Throwable
中的常用方法。
Throwable
常用方法如下:
printStackTrace()
: *打印異常詳細信息。
getMessage()
: 獲取異常原因。
toString():
獲取異常類型及描述信息。
public class Demo03 { public static void main(String[] args) { /** * try- catch 捕獲異常 * */ // 可能會生成的異常 try { // 捕獲或者聲明 read("b.txt"); } catch (FileNotFoundException e) { // 使用某種捕獲,實現對異常的處理 System.out.println(e); /** * Throwable中的查看方法 * getMessage 獲取異常信息 提示給用戶看的 * toString 獲取異常的類型和異常描述(不用) * printStackTrace * */ System.out.println("Throwable常用方法測試"); System.out.println(e.getMessage()); // 文件不存在 System.out.println(e.toString()); e.printStackTrace(); } finally { System.out.println("不管程序怎樣,這里都會被執行"); } System.out.println("over"); } public static void read(String path) throws FileNotFoundException { if (!path.equals("a.txt")) { throw new FileNotFoundException("文件不存在"); } } }
輸出結果為:
java.io.FileNotFoundException: 文件不存在
-----Throwable常用方法測試------
文件不存在
java.io.FileNotFoundException: 文件不存在
不管程序怎樣,這里都會被執行
注意事項 :try
、 catch
、 finally
、都不可以單獨使用
關于Java異常類型及處理方法是怎樣的問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。