为了账号安全,请及时绑定邮箱和手机立即绑定

newExc.initCause(e); initCause是什么意思?用来干嘛的

public class ChainTest {

 public static void main(String[] args) {
  ChainTest ct = new ChainTest();
  try{
   ct.test2();
  }catch(Exception e){
   e.printStackTrace();
  }
 }
 public void test1() throws DrunkException{
  throw new DrunkException("喝车别开酒");
 }
 public void test2(){
  try {
   test1();
  } catch (DrunkException e) {
   
   RuntimeException newExc =
    new RuntimeException(e);
   //newExc.initCause(e);
   throw newExc;
  }
 }


正在回答

1 回答

test1()函数抛出的是DrunkException异常,test2()函数调用了test1()并对test1()中的异常进行了处理,抛出的是RuntimeException异常,initCase(e)说明了test2()抛出的RuntimeException是由于DrunkException异常引起的。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

newExc.initCause(e); initCause是什么意思?用来干嘛的

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信