我是靠谱客的博主 美满仙人掌,这篇文章主要介绍异常概述和finally语句注意点,现在分享给大家,希望可以做个参考。


一、try-catch语句

      在Java中,异常通过try-catch语句捕获。其一般语法形式为:

复制代码
1
2
3
4
5
6
7
8
try { // 可能会发生异常的程序代码 } catch (Type1 id1){ // 捕获并处置try抛出的异常类型Type1 } catch (Type2 id2){ //捕获并处置try抛出的异常类型Type2 }

    匹配的原则是:如果抛出的异常对象属于catch子句的异常类,或者属于该异常类的子类,则认为生成的异常对象与catch块捕获的异常类型相匹配。

    注意:一旦某个catch捕获到匹配的异常类型,将进入异常处理代码。一经处理结束,就意味着整个try-catch语句结束。其他的catch子句不再有匹配和捕获异常类型的机会。

Java通过异常类描述异常类型,对于有多个catch子句的异常程序而言,应该尽量将捕获底层异常类的catch子句放在前面,同时尽量将捕获相对高层的异常类的catch子句放在后面。否则,捕获底层异常类的catch子句将可能会被屏蔽。
      例如:RuntimeException异常类包括运行时各种常见的异常,ArithmeticException类和ArrayIndexOutOfBoundsException类都是它的子类。因此,RuntimeException异常类的catch子句应该放在 最后面,否则可能会屏蔽其后的特定异常处理或引起编译错误。
finally 块:无论是否捕获或处理异常,finally块里的语句都会被执行。当在try块或catch块中遇到return语句时,finally语句块将在方法返回之前被执行。在以下4种特殊情况下,finally块不会被执行:
     1)在finally语句块中发生了异常。
     2)在前面的代码中用了System.exit()退出程序。
     3)程序所在的线程死亡。
     4)关闭CPU。
 finally里的 return语句会把 try/catch块里的 return语句效果给覆盖掉。

最后

以上就是美满仙人掌最近收集整理的关于异常概述和finally语句注意点的全部内容,更多相关异常概述和finally语句注意点内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部