自定义异常类中传入Throwable类型和对象 String类型对象有什么区别public class MyException extends Exce
自定义异常类中传入Throwable类型和对象 String类型对象有什么区别 public class MyException extends Exception {
public MyException(String a){ super(a); }
public MyException(Throwable b){ super(b); }
public MyException(String a,Throwable b){ super(a,b); }
}
这三个有什么区别,当我在上级抛出异常时如何确定它是传到这三这里面哪一个呢?? 比如我用throw new MyException("输入错误!");这是用的public MyException(String a) 那我要用public MyException(Throwable b)和public MyException(String a,Throwable b)这个呢?应该怎么写 [最优解释]
try { // TODO } catch (Throwable t) { throw new MyException(t); // or throw new MyException(t.getMessage(), t); }
[其他解释] public MyException(Throwable b) 这个输入参数是继承Throwable类的子类都可以 和public MyException(String a,Throwable b) 这个就是两个参数了,第一个字符,第二个Throwable对象 [其他解释] “public MyException(String a,Throwable b) 这个就是两个参数了,第一个字符,第二个Throwable对象”这个是不是就是说我传参数的时候如果是public MyException(“数据有误”, b) 其中b是通过catch (Throwable b) 传来的 这样就是调用的public MyException(String a,Throwable b) 么? [其他解释]
“public MyException(String a,Throwable b) 这个就是两个参数了,第一个字符,第二个Throwable对象”这个是不是就是说我传参数的时候如果是public MyException(“数据有误”, b) 其中b是通过catch (Throwable b) 传来的 这样就是调用的public MyException(String a,Throwable b) 么? [其他解释]