亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

寫DrunkException的時候出現了一個問題:類型 serializable 類 DrunkException 未聲明類型為 long 的靜態終態 serialVersionUID 字段

這個代碼有錯:

package imooc.exception.test;


public class DrunkException extends Exception {

public DrunkException() {}

public DrunkException(String message) {

super(message);

}

}

那個類那邊提示類型 serializable 類 DrunkException 未聲明類型為 long 的靜態終態 serialVersionUID 字段,這是什么意思呀?

下面是ChainTest類,看看有沒有錯:

package imooc.exception.test;


public class ChainTest {


/*

* 這個類完成的工作:第一個方法(Test1):拋出“喝大了”異常;

* 第二個方法(Test2):調用Test1,捕獲“喝大了”異常,并包裝成運行時異常,繼續拋出;

* main方法中調用test2,嘗試捕獲test2方法拋出的異常

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

ChainTest ct = new ChainTest();

try {

ct.test2();

}catch(Exception e) {

e.getStackTrace();

}

}


public void test1() throws DrunkException {

throw new DrunkException("喝車別開酒!");

}

public void test2() {?

try {

test1();

} catch (DrunkException e) {

// TODO 自動生成的 catch 塊

//e.printStackTrace();這個就不需要了

RuntimeException newExc = new RuntimeException("司機一滴酒,親人兩行淚");//新建一個RuntimeException,起名叫newExc

newExc.initCause(e);//調用newExc的initCause方法并把捕獲的DrunkException放進去

throw newExc;//拋出新異常

}

}

}


正在回答

1 回答

ChainTest類的main方法catch塊里e.getStackTrace();改成e.printStackTrace();
1 回復 有任何疑惑可以回復我~
#1

DrJexus 提問者

還有test2里面司機一滴酒親人兩行淚這句話在演示案例中改成了e,這是為什么呢?
2019-08-27 回復 有任何疑惑可以回復我~
#2

無憂21st 回復 DrJexus 提問者

catch塊里是DrunkException對象 e是DrunkException對象返回的錯誤信息 司機一滴酒,親人兩行淚這段話不也是錯誤提示信息嘛,用e替換了而已
2019-08-27 回復 有任何疑惑可以回復我~
#3

無憂21st 回復 DrJexus 提問者

e是錯誤信息對象
2019-08-27 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

寫DrunkException的時候出現了一個問題:類型 serializable 類 DrunkException 未聲明類型為 long 的靜態終態 serialVersionUID 字段

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號