Java异常
前言
很早就想整理一下Java的各个异常了,特别是初学Java时,总是对运行时异常、非运行异常、必检异常等概念傻傻分不清。参考了一下其他文章,大概整理一下,由于异常过多,只列出其分类和比较常见的异常。
异常分类
如图:所有的异常的基类是Throwable,由它派生的子类是Exception和Error。其中,Exception又派生出运行时异常和非运行时异常两个分支。
非必检异常:包括了运行时异常:RuntimeException和Error,我们的编译器没要求我们在设计程序时就必须捕获或抛出的异常。
必检异常:如图,方框匡住的部分,即非运行异常。要求我们设计程序时就应该捕获或者抛出。
总结
虽然上图没有列出所有异常,但已分好类,如果遇到上面没有出现的异常,我们可以在ide中查看该异常的源码,即可找到它是继承了哪个类,对照该图,就能确定它属于什么异常。