java提供了两种异常机制。一种是运行时异常,一种是检查式异常
检查式异常:我们经常遇到的IO异常及sql异常就属于检查式异常。对于这种异常,java编译器要求我们必须对出现的这些异常进行catch 所以 面对这种异常不管我们是否愿意,只能自己去写一堆catch来捕捉这些异常。
运行时异常:我们可以不处理。当出现这样的异常时,总是由虚拟机接管。比如:我们从来没有人去处理过NullPointerException异常,它就是运行时异常,并且这种异常还是最常见的异常之一。
throwable
-
error
-
Exception
-
IOExcption
-
RuntimeException
-
五种常见异常
1、ClassCastException(类转换异常)
2、IndexOutOfBoundsException(数组越界)
3、NullPointerException(空指针)
4、ArrayStoreException(数据存储异常,操作数组时类型不一致)
5、BufferOverflowException异常