java throws exception中的方法_Java異常處理之------Java方法中throws Exception使用案例!什么情況下使用throws Exception?...

@ava 中異常的處理

1、(終極解釋!!!)throws Exception放在方法后邊,是throws Exception表示的是本方法不處理異常,交給被調用處處理(如果你不希望異常層層往上拋,你就要用throws Exception) ,而且被調用處必須處理。

2、throw new Exception 表示人為的拋出一個異常,例如:

public boolean insert(News n) {

try{

.....

}catch{

throw new Exception("這是我自己拋出的一個異常,如果我看到此段信息表示我這個方法這兒出錯了,給自己看的!");

}finally{

}

}

3,首先方法后邊加上throws Exception的作用是拋出異常。其中Exception可以理解為所有異常,也可以拋出指定異常。如果方法后邊不加throws Exception,方法出了異常就會向上傳遞拋出(如果方法有調用者,那就交給調用者處理,如果調用者繼續一層層拋出,最終交給虛擬機,虛擬機處理,整個程序會中斷! 如果在程序中捕獲  還可以繼續進行。)。

4,如果有異常你不用層層向上拋出那么你就要用throws Exception,然后在調用時加上try catch語句處理...。。。如果有異常我一般選擇這種處理方法。相比不用throws Exception,加上了throws Exception后,調用該方法時,必須加上try...catch才可以(你加上throw exception。調用的地方就必須try catch,不然編譯都不過。。這樣代碼就更健壯了。)。

相當於一種約束,如果不加throws Exception,在多個地方調用方法時,添加try...catch也可以,但是有時候就會忘記加try...catch。

5,另外異常處理的原則是盡可能早的catch異常,正常的程序不應該寫throws Exception。

6,運行異常(繼承RuntimeException)可以不捕獲,向上拋,如果一直沒有處理,則jvm會自動處理(停止線程,打印異常)。

---非運行期異常,必須捕獲或者在方法聲明。

public class helloworld {

public static void main(String[] args) {

// TODO Auto-generated method stub

// System.out.printf("hello.java");

try {

test();

} catch (Exception e) {

System.out.printf(e.getMessage());

}

}

/*

*

* throws

* Exception:如果出現未知錯誤,會跑出Exception。如果這里加了異常捕捉,調用test方法時,就要加上try...catch

*/

private static void test() throws Exception {

ArrayList list = new ArrayList();

int x = 1;

int y = 2;

int z = 3;

if (x + y >= z) {

System.out.printf("邏輯正確!");

} else {

throw new Exception("test方法有問題"); // 手動拋出一個異常

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值