自定义异常类中传入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) 么? ------其他解决方案--------------------