【Java核心面试宝典】Day11、“异常处理”最新常见面试题,欢迎补充!

举报
灰小猿 发表于 2021/08/13 07:49:03 2021/08/13
1.5k+ 0 0
【摘要】 Hello,你好呀,我是灰小猿!一个超会写bug的程序猿!用坚持缔造技术、用指尖敲动未来!和很多小伙伴们一样,我也是一名奔波在Java道路上的“创造者”。也想靠技术来改未来,改变世界!因为我们坚信每一次敲动键盘都能让生活变得更智能、世界变得更有趣!在此专栏《Java核心面试宝典》记录我们备战梦想的【day 11】!之前和大家总结的在面向对象这一部分的面试题就结束了,今天继续来和大家分享在Ja...

Hello,你好呀,我是灰小猿!一个超会写bug的程序猿!

用坚持缔造技术、用指尖敲动未来!

和很多小伙伴们一样,我也是一名奔波在Java道路上的“创造者”。也想靠技术来改未来,改变世界!因为我们坚信每一次敲动键盘都能让生活变得更智能、世界变得更有趣

在此专栏《Java核心面试宝典》记录我们备战梦想的【day 11】

在这里插入图片描述

之前和大家总结的在面向对象这一部分的面试题就结束了,今天继续来和大家分享在Java的异常处理中常见的几个面试题。

1、说一下异常处理的三种操作?

Java的异常处理基于三种操作:声明异常抛出异常捕获异常

声明异常:
如果一个方法可能抛出异常,则需要在方法声明中使用throws声明异常,如果一个方法可能抛出多种类型的异常,则需要在throws之后依次例举可能抛出的异常类型。

抛出异常:
如果程序检查到错误,则可以创建一个异常的实例并抛出该异常实例,使用关键字throw抛出异常,
在这里需要注意声明异常的关键字throws和抛出异常的关键字throw的区别

捕获异常:
捕获异常通过try-catch块实现。每个 catch块包含一个特定异常类型的参数,如果需要捕获多种异常,则需要使用多个catch 块,每个 catch 块分别包含一个特定异常类型的参数。

2、追问:详细说一说throws和throw的区别?

throw和throws关键字的区别;

1.throw用在方法体中,后边接异常对象(new xxx()),throws用在方法声明后面,后边接异常类名;
2. throw表示抛出某个异常(一定出现了异常),throws表示程序可能出现异常,也可能没有异常;
3.throw后边只能跟一个异常,throws后边可跟多个异常,用逗号隔开;
4. throw抛出异常,由方法体内的语句处理,throws抛出异常,由方法的调用者处理异常!

3、例举五种常见的异常类型

NullPointerException:空指针异常
ArrayIndexOutOfBoundsException:数组下标越界异常
ArithmeticException:算术运算异常
NumberFormatException:数字格式异常
IOException:输入输出异常

4、如果需要在 catch 块捕获和处理多种类型的异常,且这些异常的类之间存在父类和子类的关系,应该如何确定 catch 块的顺序?

子类异常对应的catch块应该出现在父类异常对应的catch块之前,否则可能会出现编译报错。

5、在finally子句中一般放置什么代码?

finally子句是无论发生异常都必须要执行的,因此在finally中放置必须被执行的代码。

今日总结

今天的面试题全部都是关于异常抛出的,其中需要掌握的就是处理异常的三种操作,以及这三种操作是具体如何实现的,熟悉try-catch-finally语句的使用规则。

如果小伙伴们有遇到相关的其他面试题,欢迎在评论区留言提出,我会把大家提出的总结到文章内`, 欢迎小伙伴们一起评论区打卡学习!小伙伴们可也在左方加我好友一起探讨学习!

我是==灰小猿==,我们下期见!请添加图片描述

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。