在Java中提供了一些异常用来描述经常发生的错误,对于这些异常,有的需要程序员进行捕获处理或声明抛出,有的是由Java虚拟机自动进行捕获处理。Java中常见的异常类如下表:
| 异 常 类 | 说 明 |
| ClassCastException | 类型转换异常类 |
| ClassNotFoundException | 未找到相应的类 |
| ArithmeticException | 算术异常 |
| ArrayIndexOutOfBoundsException | 数组下标越界异常 |
| ArrayStoreException | 数组中包含不兼容的值而抛出异常 |
| SQLException | 操作数据库异常 |
| NullPointerException | 空指针异常 |
| NoSuchFieldException | 字段未找到异常 |
| NoSuchMethodException | 方法未找到抛出的异常 |
| NumberFormatException | 字符串转换为数字抛出的异常 |
| NegativeArraySizeException | 数组元素的个数为负数时抛出的异常 |
| StringIndexOutOfBoundsException | 字符串索引超出范围抛出的异常 |
| IOException | 输入输出异常 |
| IllegalAccessException | 不允许访问某个类 |
| InstantiationException | 当应用程序试图使用Class类中的newInstance()方法创建一个类的实例,而指定的类对象无法被实例化时抛出的异常 |
| EOFException | 文件已结束异常 |
| FileNotFoundException | 文件未找到异常 |
Java内置的异常类可以描述在编程时出现的大部分异常情况。除此之外,用户还可以自定义异常类,以满足特殊的程序需要。用户自定义异常类,只需继承Exception基类即可。
public class UserNotFindException extends Exception{ public UserNotFindException() { super(); } public UserNotFindException(String message) { super(message); } }
如果想使用自定义的异常抛出即可
throw new MyExceptions("该用户不存在");