自定义异常类中传入Throwable类型和对象 String类型对象有什么区别
publicclassMyExceptionextendsException{publicMyException(Stringa){super(a);}publicMyE...
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);
}
}
这三个有什么区别,当我在上级抛出异常时如何确定它是传到这三这里面哪一个呢?? 展开
public MyException(String a){
super(a);
}
public MyException(Throwable b){
super(b);
}
public MyException(String a,Throwable b){
super(a,b);
}
}
这三个有什么区别,当我在上级抛出异常时如何确定它是传到这三这里面哪一个呢?? 展开
3个回答
展开全部
假如你想调用 public MyException(String a),那么你传的参数就应该是String型的,如果调用public MyException(Throwable a),那么传的参数应该就是Throwable 型的,如果调用
public MyException(String a,Throwable a),传的参数就应该传两个参数,分别是String型和Throwale型,换句话说调用哪一个是由所传参数决定的。
实际使用中你只要在需要抛出异常的方法后面加上 throws MyException 就行,程序会自动识别具体调用哪个构造方法,代码示例: public void test throws MyException(){}
希望对你有帮助~
public MyException(String a,Throwable a),传的参数就应该传两个参数,分别是String型和Throwale型,换句话说调用哪一个是由所传参数决定的。
实际使用中你只要在需要抛出异常的方法后面加上 throws MyException 就行,程序会自动识别具体调用哪个构造方法,代码示例: public void test throws MyException(){}
希望对你有帮助~
展开全部
不同的构造函数,合适不同的场合使用,效果是一样的——当然参数不同结果会不同。
追问
这样说吧,比如我用throw new MyException("输入错误!");这是用的public MyException(String a)
那我要用public MyException(Throwable b)和public MyException(String a,Throwable b)这个呢?应该怎么写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Throwable会直接打印相关异常
追问
我现在就是不知道这三个分别是怎么调用的。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询