网上找的异常结构图,侵删:
对我们而言,着重需要区分的了解什么是【运行时异常】,以及【非运行时异常】
代码层面简而言之:运行时异常就是你在代码中可不去显式处理的,比如常见的
NullPointerException
ClassCastException
IndexOutOfBoundsException
IllegalArgumentException
ArithmeticException---算术运算异常
ArrayStoreException - 向数组中存放与声明类型不兼容对象异常
NumberFormatException - 数字格式异常
UnsupportedOperationException - 不支持的操作异常
非运行时异常就是需要显式的try...catch处理的
throw用于方法内部抛出异常
throw XXXException
throws用于方法声明抛出异常给上级