Java在标准包java.lang
中定义了几个异常类。
这些异常中最常见的是标准类型RuntimeException
的子类。 由于java.lang
默认会隐式导入到所有Java程序中,因此从RuntimeException
派生的大多数异常都是自动可用的。
Java定义了与其各种类库相关的几种其他类型的异常。 以下是Java 未检查 RuntimeException
的列表。
编号 | 异常类 | 描述 |
---|---|---|
1 | ArithmeticException |
算术错误,例如:除以零。 |
2 | ArrayIndexOutOfBoundsException |
数组索引超出范围(越界)。 |
3 | ArrayStoreException |
分配了不兼容类型的数组元素。 |
4 | ClassCastException |
无效类型转换。 |
5 | IllegalArgumentException |
使用非法参数调用方法。 |
6 | IllegalMonitorStateException |
非法监视操作,例如:等待未锁定的线程。 |
7 | IllegalStateException |
环境或应用程序处于不正确的状态。 |
8 | IllegalThreadStateException |
请求的操作与当前线程状态不兼容。 |
9 | IndexOutOfBoundsException |
某种类型的索引超出范围(越界)。 |
10 | NegativeArraySizeException |
使用负数大小来创建数组。 |
11 | NullPointerException |
无效使用空引用。 |
12 | NumberFormatException |
无效的字符串转换为数字格式。 |
13 | SecurityException |
试图违反安全规定。 |
14 | StringIndexOutOfBounds |
尝试在字符串的边界之外进行索引。 |
15 | UnsupportedOperationException |
遇到了不受支持的操作。 |
以下是java.lang
中定义的Java已检查异常列表。
编号 | 异常类 | 描述 |
---|---|---|
1 | ClassNotFoundException |
未找到类异常 |
2 | CloneNotSupportedException |
尝试克隆未实现Cloneable 接口的对象。 |
3 | IllegalAccessException |
拒绝访问类异常。 |
4 | InstantiationException |
尝试创建抽象类或接口的对象异常。 |
5 | InterruptedException |
一个线程被另一个线程中断。 |
6 | NoSuchFieldException |
请求的字段不存在。 |
7 | NoSuchMethodException |
请求的方法不存在。 |