首頁 > Java > java教程 > java中的異常概述

java中的異常概述

王林
發布: 2019-11-29 15:18:43
轉載
2582 人瀏覽過

java中的異常概述

一、什麼是異常

異常就是程式運作過程中所出現的不正常現象。

try:把可能發生例外的程式碼包起來,當發生異常時,將例外情況拋出

catch:捕獲異常並處理

finally:不管是否發生異常,都會執行

throw:手動引發一個異常

throws:定義任何被呼叫方法的異常

線上學習影片推薦:java線上影片

二、異常出現的原因

使用者輸入錯誤;

程式碼的錯誤;

環境的因素;

異常機制保證了程式的健全性!

三、異常的分類

NullPointerException

空引用異常

IndexOutOfBoundException

下標越界異常

Error與編``譯環境有關,它是Java執行時間的內部錯誤以及資源耗盡錯誤。很難修復,不期望用戶能修復。

四、取得異常訊息

程式發生異常的時候,程式就直接從try執行到catch語句區塊,不再繼續執行`在這裡。

public class text3 {
    public static void main(String[] args) {
		System.out.println("main开始执行");
		text3 a=new text3();
		a.text();
		System.out.println("main执行结束");
	}
    public void text() {
    	int a;
    	try {
    		 a=2/0;
    		System.out.println(a);
    	}catch(ArithmeticException e){
    		System.out.println("程序发生了异常");
    	}
    }
}
登入後複製

異常捕獲之後程式才不會斷

public class text3 {
    public static void main(String[] args) {
		System.out.println("main开始执行");
		text3 a=new text3();
		a.text();
		System.out.println("main执行结束");
	}
    public void text() {
    	int a;
    	//try {
    		 a=2/0;
    		System.out.println(a);
    	//}catch(ArithmeticException e){
    		//System.out.println("程序发生了异常");
    	//}
    }
}
登入後複製

控制台結果:

java中的異常概述

異常自己不處理但是得聲明一下。

異常宣告:指一個方法不處理它所產生的異常,而是呼叫層次向上傳遞,誰呼叫的這個方法誰來處理。

五、手動拋出異常

throw exception; 參數exception表示要拋出的異常對象,該對像是throwable類的子類,而且只能夠是一個。

public void text1() throws ArithmeticException{
		
	}
	
	public static void main(String[] args) {
		Text t=new Text();
		try {
			t.text();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println(e.getMessage());
		}
	}
	public void text() throws Exception {
		//手动抛出异常
		throw new Exception("这是手动抛出来的");
	}
}
登入後複製

六、try catch finally的嵌套使用

public class Textthrow {
     
public static void main(String[] args) {
	double a=Math.random();
    try {
   	 if(a>0.5) {
   		 System.out.println(a+"程序不报错");
   	 }
   	 else {
   		 throw new Exception();
   	 }
    }catch(Exception e) {
   	 System.out.println("这是外层捕获的对象"+e);
   	 try {
   		 a=1/0;
   	 }catch(ArithmeticException e1) {
   		 System.out.println("这是内层捕获的对象"+e1);
   		 
   	 }finally {
   		 System.out.println("这是内层的finally块");
   	 }
    }finally {
   	 System.out.println("这是外层的finally块 ");
    }
}
}
登入後複製

七、異常鏈


定義:兩個或者多個不同的異常出現在同一個程式中,並且會發生嵌套拋出,我們稱之為異常鏈。

相關文章教學推薦:
java入門程式#######

以上是java中的異常概述的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:csdn.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板