处理 Java 中所有异常的内置基类是什么?它是异常的还是可抛出的?
两个内置类有什么区别,谁能解释一下。
下图将帮助您了解Exception
层次结构
图片参考:programcreek:
如您所见,在处理已检查和未检查的异常时是错误和异常Throwable
的超类。Exception
Throwable 类是 Java 语言中所有错误和异常的超类。只有作为此类(或其子类之一)实例的对象才会被 Java 虚拟机抛出,或者可以被 Java throw 语句抛出。同样,只有此类或其子类之一可以是 catch 子句中的参数类型。出于对异常的编译时检查的目的,Throwable 和任何不是 RuntimeException 或 Error 的子类的 Throwable 子类都被视为已检查异常。
javadocs就是为此而生的。在这里你可以看到Throwable是所有Exceptions
和的超类Errors
。然后你已经检查和未检查Exceptions
,后者在哪里RuntimeException
以及它的所有子类。
当您对此类事情感到疑惑时,请记住使用 Google,因为所有这些信息都可以广泛使用,并且可以通过搜索引擎轻松找到。
上面的回答非常有用。我只想补充:
主基类:
java.lang.Object
大师级例外:
java.lang.Throwable
主异常类扩展Throwable
:
java.lang.Exception
和java.lang.Error
Unchecked 类扩展Exception
扩展Throwable
:
java.lang.RuntimeException