java中throw抛出的异常一定要用相应的catch块处理吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中throw抛出的异常一定要用相应的catch块处理吗相关的知识,希望对你有一定的参考价值。

throw抛出的异常可以有两种处理办法

    自己使用try...catch()捕获

    使用throws抛给调用者

    一般不要抛给main,虚拟机会直接将程序杀死,造成闪退

参考技术A 不一定。子类的异常可以用父类来捕获,只是相应的catch会更直观和严谨 参考技术B 可以自己写catch块处理,也可以抛出给调用程序处理,调用程序可以写catch块处理,也可以抛出给框架处理. 参考技术C 应该说只要调用了可能发生异常的方法即方法后有throws关键字时必须用try-catch来捕获,不然不符合java语义规则。
trows声明可能发生的异常,也称为“回避异常”,throw是抛出异常这个动作。
参考技术D 抛出或者捕捉
有一个原则
调用者能处理,就可以向上级抛出;
调用者不能处理,就必须自己捕捉处理;

而且一般会在finally中 做释放资源的 操作

以上是关于java中throw抛出的异常一定要用相应的catch块处理吗的主要内容,如果未能解决你的问题,请参考以下文章

Java throw:异常的抛出怎么回事

Java中throw和throws的区别

java 19 - 7 throw和throws的区别

抛出异常

Java异常处理中关键字throws,throw,try,catch,finally分别代表啥意义?在try块中可以抛出异常吗?

Java语言中throw和throws的区别是啥?