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

ApplePro

JAVA的RuntimeException类型的异常,是不是一定要在“源码”中有 “throw new xxx” 这样的动作才会抛出 ?? ![](https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241108/e7f2be5c8257cf9fc85a347045d2d077.png) ![](https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241108/8f066e0272638c33acdb7f2aad43edde.png)

阅读量:15

点赞量:0

问AI
是,但不一定是 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(); } }