Java内置异常
Java在标准包java.lang中定义的几个内部的异常类。
最普遍的是这些异常都是标准型RuntimeException的子类。由于java.lang中被隐式地导入所有的Java程序,会自动提供最异常从RuntimeException的派生。
Java定义了其他几种类型,涉及到它的各种类库异常。下面是Java未经检查的RuntimeException列表。
异常 | 描述 |
---|---|
ArithmeticException | 算术错误,如除以零. |
ArrayIndexOutOfBoundsException | 数组索引超出界. |
ArrayStoreException | 分配到不兼容的类型的数组元素. |
ClassCastException | 无效的转换. |
IllegalArgumentException | 非法参数来调用一个方法. |
IllegalMonitorStateException | 非法监视操作,诸如在等待加锁的线程. |
IllegalStateException | 环境或应用程序处于不正确的状态. |
IllegalThreadStateException | 请求的操作不能与当前线程状态兼容. |
IndexOutOfBoundsException | 某些类型的索引外的界限. |
NegativeArraySizeException | 一个大小为负的数组创建. |
NullPointerException | 使用无效的空引用. |
NumberFormatException | 无效的转换字符串为数字格式. |
SecurityException | 试图违反安全性. |
StringIndexOutOfBounds | 尝试索引一个字符串的边界之外. |
UnsupportedOperationException | 不支持的操作时遇到. |
下面是Java定义在java.lang中的检查的异常列表。
异常 | 描述 |
---|---|
ClassNotFoundException | 未找到类 |
CloneNotSupportedException | 试图克隆不实现Cloneable接口的对象. |
IllegalAccessException | 访问一个类被拒绝. |
InstantiationException | 试图创建一个抽象类或接口的对象. |
InterruptedException | 一个线程已经被另一个线程中断. |
NoSuchFieldException | 被请求字段不存在. |
NoSuchMethodException | 请求的方法不存在. |