当前位置:   article > 正文

【基础笔记】unchecked异常和checked异常 Java_unchecked error

unchecked error

java中,将所有派生于Error类和RuntimeException类的异常称为unchecked异常(蓝色部分);其它的异常称为checked异常(粉色部分)。

程序中不需要处理Error类和RuntimeException类及其子类的异常,而所有的checked异常必须进行处理,否则会报编译错误。

注意:

finally永远会被执行。

try语句可以只有finally子句,而没有catch子句,也可以只有catch子句,没有finally子句。

例子:

  1. 【分析】下面两段代码在编译时有何区别?
  2. public static void main(String args[]) {
  3. throw new IOException();
  4. }
  5. public static void main(String args[]) {
  6. throw new NullPointerException();
  7. }
  8. //第一个是unchecked异常,不会报编译错误;第2个是checked异常,未处理,会报编译错误
  1. finally子句中如果有return语句,则可能会掩盖原始的返回值。分析下列代码:
  2. public static void main(String[] args) {
  3. System.out.println("" + getValue());
  4. }
  5. private static int getValue() {
  6. int z = 0;
  7. try {
  8. z = 8 / 0; //算术异常
  9. return z;
  10. } catch (Exception e) {
  11. return 7;
  12. } finally {
  13. return 8;
  14. }
  15. }
  16. //输出结果一直为8

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/141829
推荐阅读
相关标签
  

闽ICP备14008679号