RuntimeException和Exception区别
1.Throwable类及子类的结构
2.异常的分类
- Error,一般为底层的不可恢复的错误
- Exception,分为未检查异常(RuntimeException)和已检查异常(非RuntimeException)。
未检查异常是因为程序员没有进行必需要的检查,因为疏忽和错误而引起的错误。
几个经典的RunTimeException如下:- java.lang.NullPointerException;
- java.lang.ArithmaticException;
- java.lang.ArrayIndexoutofBoundsException
3.是否需要声明和捕获
- Runtime Exception:方法定义不需要声明抛出的exception,调用方法时,不必捕获。
- Exception:定义方法时必须声明所有可能会抛出的exception; 在调用方法时,必须捕获它的checked exception。