如何编写可抛出多个检查java异常的UserException类? 我应该扩展Throwable类吗? 如果你能给我一个简单的例子说明抛出两个例外,那会更好。 这个问题的主要目的是我想减少不。在代码中尝试和捕获块语句。如何编写抛出多个检查异常的UserException
1
A
回答
0
每个线程最多可以有一个例外,那就是目前被抛出,尚未抓到。告诉我们你想做什么的完整故事,否则我们不得不猜测太多。
0
罗兰德是对的,一种方法只能抛出一个例外。
也许您正在寻找异常层次结构?
0
有一种方法抛出“多个例外”,有点。你可以抛出一个异常封装到另一个,就像这样:
throw new UserException(new SomeException());
当这个被捕获,捕手可以找到这样的原因:
catch (UserException e) {
Exception cause = e.getCause(); // cause is an instance of SomeException
}
这样捕手同时访问异常。
定义UserException
为扩展例外:
public class UserException extends Exception {
private UserException(String message, Throwable cause) {
super(message, cause);
}
private UserException(Throwable cause) {
super(cause);
}
}
0
不要延长的Throwable。如果您希望它成为检查的异常,请扩展异常,如果您希望它成为未经检查的异常,请扩展RuntimeException。
我同意其他答案,可能你需要一个异常层次结构(查看IOExceptions是如何工作的,还有一个FileNotFoundException,它扩展了IOException,因此你可以捕获IOException并获取它们)。提供更多关于你想要的行为的信息。
相关问题
- 1. java抛出检查异常?
- 2. 如何检查c#编译器抛出的异常?
- 3. 检查哪个变量抛出异常
- 4. IntelliJ检查 - 非抛出的异常
- 5. 抛出已检查的异常
- 6. 如何从java线程抛出一个检查异常?
- 7. 抛出一个新的异常抛出一个旧的异常
- 8. 魔术异常抛出抛出异常
- 9. 查询过抛出异常
- 10. JPA查询抛出异常
- 11. JVM如何“抛出”异常
- 12. 如何抛出异常
- 13. Java - 如何检查抛出哪种异常类型?
- 14. 如何检查函数是否在c#中抛出异常?
- 15. 在Java中抛出多个异常
- 16. 在JavaScript中抛出多个异常
- 17. 通过多个进程抛出异常
- 18. 多个异常抛出函数的异常处理实践
- 19. 向文件写入抛出的异常
- 20. 异常抛出异常
- 21. 抛出异常
- 22. 抛出异常
- 23. 抛出异常
- 24. 异常抛出
- 25. 如何检查和抛出一个异常,如果在JSON文件中存在
- 26. string.Join抛出一个异常
- 27. Tkinter.StringVar()抛出一个异常
- 28. 捕捉多个异常并抛出异常
- 29. 重写方法不会抛出异常时的异常处理
- 30. 上次抛出的异常包含以前抛出的异常?