异常分类

共同的祖先 Throwable

Throwable: 有两个重要的子类:Exception(异常)和 Error(错误),二者都是 Java 异常处理的重要子类,各自都包含大量子类。

error:程序无法处理的错误,运行应用程序出现严重错误 ,Jvm出现问题导致程序终止,

 Exception(异常):是程序本身可以处理的异常

 Exception 类有一个重要的子类 RuntimeException,RuntimeException 类及其子类表示“JVM 常用操作”引发的错误

Java的异常(包括Exception和Error)分为可查的异常(checked exceptions)和不可查的异常(unchecked exceptions)

除了RuntimeException及其子类以外,其他的Exception类及其子类都属于可查异常

 

不可查的异常(unchecked exceptions):

ArithmeticException    当出现异常的运算条件时,抛出此异常。例如,一个整数"除以零"时,抛出此类的一个实例。
ArrayIndexOutOfBoundsException    用非法索引访问数组时抛出的异常。如果索引为负或大于等于数组大小,则该索引为非法索引。
ArrayStoreException    试图将错误类型的对象存储到一个对象数组时抛出的异常。
ClassCastException    当试图将对象强制转换为不是实例的子类时,抛出该异常。
IllegalArgumentException    抛出的异常表明向方法传递了一个不合法或不正确的参数。
IllegalMonitorStateException    抛出的异常表明某一线程已经试图等待对象的监视器,或者试图通知其他正在等待对象的监视器而本身没有指定监视器的线程。
IllegalStateException    在非法或不适当的时间调用方法时产生的信号。换句话说,即 Java 环境或 Java 应用程序没有处于请求操作所要求的适当状态下。
IllegalThreadStateException    线程没有处于请求操作所要求的适当状态时抛出的异常。
IndexOutOfBoundsException    指示某排序索引(例如对数组、字符串或向量的排序)超出范围时抛出。
NegativeArraySizeException    如果应用程序试图创建大小为负的数组,则抛出该异常。
NullPointerException    当应用程序试图在需要对象的地方使用 null 时,抛出该异常
NumberFormatException    当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常。
SecurityException    由安全管理器抛出的异常,指示存在安全侵犯。
StringIndexOutOfBoundsException    此异常由 String 方法抛出,指示索引或者为负,或者超出字符串的大小。
UnsupportedOperationException    当不支持请求的操作时,抛出该异常。

可查的异常(checked exceptions)

ClassNotFoundException    应用程序试图加载类时,找不到相应的类,抛出该异常。
CloneNotSupportedException    当调用 Object 类中的 clone 方法克隆对象,但该对象的类无法实现 Cloneable 接口时,抛出该异常。
IllegalAccessException    拒绝访问一个类的时候,抛出该异常。
InstantiationException    当试图使用 Class 类中的 newInstance 方法创建一个类的实例,而指定的类对象因为是一个接口或是一个抽象类而无法实例化时,抛出该异常。
InterruptedException    一个线程被另一个线程中断,抛出该异常。
NoSuchFieldException    请求的变量不存在
NoSuchMethodException    请求的方法不存在

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值