JAVA RuntimeException 异常一定要在源码中有 'throw new xxx' 才会抛出吗?

作者站长头像
站长
· 阅读数 5

JAVA的RuntimeException类型的异常,是不是一定要在“源码”中有 “throw new xxx” 这样的动作才会抛出 ??

JAVA RuntimeException 异常一定要在源码中有 'throw new xxx' 才会抛出吗?

JAVA RuntimeException 异常一定要在源码中有 'throw new xxx' 才会抛出吗?

回复
1个回答
avatar
test
2024-06-24

是,但不一定是 java 源码因为最后运行代码抛出异常的是jvm,一部分异常是 java 代码抛的,还有一部分是 jvm 自己抛的比如下面代码会抛的异常都不是在 java 代码里写出来的,看源码也看不到抛出异常的具体位置(但是看 java 代码的位置就足够了)

class Scratch {
    public static void main(String[] args) {
        // test(1, 0);
        // test(null);
    }

    public static int test(int a, int b) {
        return a / b;
    }

    public static String test(Object o) {
        return o.toString();
    }
}
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容