Java 内建异常
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 对null引用的无效使用。 |
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 请求的方法不存在。 |