java面试题之异常

导读:本篇文章讲解 java面试题之异常,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

七、异常

74. throw 和 throws 的区别?

throws:用来声明一个方法可能抛出的所有异常信息,不会处理异常,只是将异常向上传,交给调用者
throw:抛出一个具体的异常类型.
throws出现在方法头,而throw出现在函数体
throws表示出现异常的可能,并不一定会发生,throw则是抛出了一个存在的异常实例.

75. final、finally、finalize 有什么区别?

final: 修饰类,表示该类不可继承
         修饰方法,表示该方法不可重写
         修饰变量,表示该变量不允许被修改
finally:是保证代码一定要被执行的一种机制.常用来关闭连接资源或者解锁等.
finalize:是Object的一个方法,它的目的是保证对象在被垃圾收集前完成特定资源的回收.1.9后已经过时.

76. try-catch-finally 中哪个部分可以省略?

catch可以省略 ,不管有没有捕获到异常,finally中的代码都会被执行;
finally是在return之后执行的,程序在执行完return之后,会将值保存起来,当执行完finally中的代码之后再将return值返回
如果finally中存在return,会导致最后返回的是finally中的值.

77. try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?

会执行,return的值会暂时保存.等到运行完finally中的代码块时才会返回return的值

78. 常见的异常类有哪些?

  • 空指针异常类型:NullPointerException
  • 类型强制转换类型:ClassCastException
  • 数组下标越界异常:ArrayIndexOutOfBoundsException
  • 输入输出异常:IOException
  • 并发写异常 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/97005.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!