异常体系
异常体系框架
Error:错误,一般指不可修复的错误,如:系统崩溃,内存溢出,JVM错误等。由JVM抛出,我们不需要处理。
Exception:异常,程序出现不正常的情况,该问题可以修复(处理异常)
Error
常见的Error:
StackOverflowError:当应用程序递归太深而发生堆栈溢出时,抛出该错误。
Exception
常见的Exception:
NullPointerException:空指针异常。
ArrayIndexOutOfBoundsException:数组索引越界异常。
NumberFormatException:当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常。
ArithmeticException:算术异常
StringIndexOutOfBoundsException:String操作中索引越界
NumberFormatException:数字格式化异常
ClassCastException:类型强制转换异常
捕获异常
1):该方法不处理,而是声明抛出,由该方法的调用者来处理(throws).
2):在方法中使用try-catch的语句块来处理异常.
异常的分类
编译时期异常
checked异常,在编译时期就会检查
运行时期异常
runtime异常,在运行时期检查
如何确定一个异常是编译异常还是运行异常呢
抛出异常
throw语句
运用于方法内部,用于给调用者返回一个异常对象。
throw new 异常类("异常信息");终止方法
throws语句
运用于方法声明之上,用于表示当前方法不处理异常,而是提醒该方法的调用者处理异常。