首页 文章 Java异常类

Java异常类

2024-06-02 17:06  浏览数:198  来源:许某    

Java语言中Throwable类是Java异常类型的顶层父类,Java异常对象是Throwable类的(直接
或者间接)实例。所有异常类组成的体系就是Java语言中的异常类体系。在Java标准类库中内建了一些通用的异常,
这些异常都是以Throwable为顶层父类衍生出来的。Throwable类派生出子类Error类和Except
ion类。1Error错误Error类及其子类的实例,代表了JVM本身相关的错误。如果异常发生,程序将无法恢复
这些异常,这些错误不能被开发者通过代码处理进行应对。常见的Error类包括内存溢出StackOverflowE
rror和内存不足OutOfMemoryError等。由于Error很少出现且开发者在应对处理上无能为力,因此
开发者需要重点关注以Exception为父类的各种异常类。2Exception异常Exception及其子类代
表程序运行时发生的各种预期之外的事件,可以被Java异常处理机制识别和捕获,是Java异常处理中的核心内容。在
Java系统提供的开发包中,声明了几百个Exception的子类,分别代表各种各样的异常情况,这些异常类根据分
类位于不同的Java包中,类名均以Exception为后缀。如果发生的异常情况在JDK中没有对应的异常类进行描
述和封装,则可以声明新的异常类描述未知的异常情况。在这些异常类中,根据异常是否需要强制捕获和处理,可以将所有异
常类分为两种,即受控异常(checked exception)和非受控异常(unchecked excepti
on)。1非受控异常。Error和RuntimeException及其子类都属于非受控异常。它们在编译时不会提
示开发者显示捕获异常,不要求程序处理这些异常。对于这些异常的发生,通常需要通过修改代码解决发生问题的根源,而不
是通过异常处理器在异常发生时进行捕获。这种异常发生的原因多半是业务逻辑或者代码逻辑存在问题,如除0异常Arit
hmeticException、强制类型转换异常ClassCastException、空指针异常NullPoi
nterException和数组索引越界异常ArrayIndexOutOfBoundsException等。2
受控异常。除了Error 和 RuntimeException及其子类之外的其他异常都属于受控异常。Java编
译器会强制要求开发者为此类异常做预备处理工作(使用try…catch…finally或者throws)。在方法
中要么用try-catch语句捕获它并处理,要么用throws子句声明抛出异常,由调用者捕获处理,否则编译将无
法通过。此类异常一般是由程序的外部运行环境导致的。由于程序可能被运行在各种未知的环境下,而开发者无法干预用户如
何使用程序。于是开发者就必须为各类异常做好准备,具体异常有SQLException、IOException、S
ocketException、FileNotFoundException和ClassNotFoundExcep
tion等。



声明:以上文章均为用户自行添加,仅供打字交流使用,不代表本站观点,本站不承担任何法律责任,特此声明!如果有侵犯到您的权利,请及时联系我们删除。

字符:    改为:
去打字就可以设置个性皮肤啦!(O ^ ~ ^ O)