前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Java高频面试之异常篇

Java高频面试之异常篇

作者头像
九转成圣
发布2024-04-10 16:40:31
发布2024-04-10 16:40:31
8400
代码可运行
举报
文章被收录于专栏:csdncsdn
运行总次数:0
代码可运行

finally 块中的代码什么时候被执行?

代码语言:javascript
代码运行次数:0
复制
(1)如果try{}语句块中有return语句,而finally{}语句块中没有return语句时,finally{}块中的代码在return语句前执行。
因为:由于程序执行return语句就意味着结束对当前函数的调用并跳出这个函数体,因此任何语句要执行都只能在return前执行,因此finally块里代码也是在return前执行的。
(2)如果在try{}语句块和finally语句块都有return语句时,finally语句块中的return语句将会覆盖函数中其他return语句。

以下方法返回什么?

代码语言:javascript
代码运行次数:0
复制
private static String extracted1() {
    try {
        int i = 10 / 0;
        return "ok";
    } catch (Exception e) {
        System.out.println("exception");
        return "exception";
    } finally {
        System.out.println("finally");
        return "finally";
    }
}

以下方法返回什么?

代码语言:javascript
代码运行次数:0
复制
private static String extracted2() {
    try {
        return "ok";
    } catch (Exception e) {
        System.out.println("exception");
        return "exception";
    } finally {
        System.out.println("finally");
        return "finally";
    }
}

try-catch-finally 中那个部分可以省略?

代码语言:javascript
代码运行次数:0
复制
try后面至少得有其一

Error 和 Exception 的区别?

运行时异常与受检异常有何异同?

throw 和 throws 的区别?

代码语言:javascript
代码运行次数:0
复制
throw:当前方法向外抛异常
throws:声明当前方法可能会抛出一个或者多个异常

常见的异常类有哪些?

代码语言:javascript
代码运行次数:0
复制
NullPointerException
ClassCastException
数组下标越界异常:ArrayIndexOutOfBoundsException
文件未找到异常:FileNotFoundException
字符串转换为数字异常:NumberFormatException
操作数据库异常:SQLException
输入输出异常:IOException
方法未找到异常:NoSuchMethodException
java.lang.OutOfMemoryError
java.lang.StackOverflowError

主线程可以捕获到子线程的异常吗?

代码语言:javascript
代码运行次数:0
复制
正常情况下,如果不做特殊的处理,在主线程中是不能够捕获到子线程中的异常的。
代码语言:javascript
代码运行次数:0
复制
public static void main(String[] args) {
    try {
        new Thread(() -> {
            int i = 10 / 0;
        }).start();
    } catch (Exception e) {
        // 不会执行
        System.out.println("子线程发生了异常");
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档