Java自定义例外

时间:2013-12-04 00:00:37

标签: java exception-handling

我试图抓住一个异常,然后抛出它。

try{
    arr = new class[arrLen]; //Goes to a constructor that may cause an exception
}
catch(Exception e){
    MyException e = new MyException;
    throw e;
}

正如您所看到的,我正在尝试执行命令,然后如果它导致异常,我想创建一个新的MyException实例然后抛出它。

我遇到的问题是我是否应该创建“Exception e”然后尝试创建一个新的“MyException e”,或者我应该创建一个新的MyException,AKA

MyException f = new MyException;
throw f;

1 个答案:

答案 0 :(得分:1)

您应该使用新变量创建新的MyException,例如f。此新异常应使用原始Exception作为原因。例如

MyException f = new MyException(e);
throw f;

如果MyException扩展了Exception,您可以重用e变量。

e = new MyException(e);
throw e;