什么是异常?
程序的异常指的是程序在运行时发生了一些事件阻止了程序按照预期进行正常执行。
产生异常的原因
程序在运行时可能发生一些无法预料到的情况,比如读取文件时不存在或者 java虚拟机 内存溢出,或者代码中除数为零,还有数组操作越界异常和空指针异常等等。
异常的分类
java 的异常分成三类
- 错误Error
这种异常是系统级别的异常。例如:当Java虚拟机无法分配对象时引发因为内存不足,无法创建更多内存就会出现 OutOfMemory Error 异常。
常见异常:
OutOfMemoryError 内存溢出
NoSuchFieldError 无此类字段错误
Thread Death 线程死锁
- 运行时异常RuntimeException
出现在运行时,在编译时不会出现。比如除零操作,这样的代码是可以编译通过的,但在运行的时候就会报错。
8个常见异常:
NullPointerException 空指针异常
ClassCastException 类型转换异常
IllegalArgument Exception 非法参数异常
Arithmetic Exception 算术异常
IndexOutOfBoundsException 下标越界异常
NumberFormatException 数字格式转化异常
ArrayStoreException 数据存储异常
SecurityException 安全异常
- 检查异常 CheckedException
这种异常是必须要处理的异常。这种异常通常在编译时出现报错 。
常见异常:
IOException 输入输出异常
SQLException 操作数据库异常
ClassNotFoundException 类未找到异常
NoSuchMethodException 方法未找到异常
NoSuchFieldException 字段未找到异常
FileNotFoundException 文件未找到异常
ReflectiveOperationException 反射操作异常
IllegalAccessException 非法访问权限异常