Home Article Practice Java异常类

Java异常类

2024-06-02 17:06  views:197  source:许某    

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等。



Disclaimer: The above articles are added by users themselves and are only for typing and communication purposes. They do not represent the views of this website, and this website does not assume any legal responsibility. This statement is hereby made! If there is any infringement of your rights, please contact us promptly to delete it.

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