7.1 异常
**异常:**程序在运行时出现的非正常情况,会导致程序崩溃
分类:
按照类型(处理方式):
- 受检异常:受检异常是指程序中必须接受检查和处理的异常,由Exception 类表示
- 非受检异常:非受检异常是程序中可以不接受检查和处理,或致命性错误异常,由RuntimeException类或Error类表示
按照程度:
- Error:严重,虚拟机也无法处理
- Exception:一般严重,通常可以处理
异常对象的两个常用方法:
- getMessage(); //获取异常消息字符串
- printStackTrace(); //打印栈踪迹
异常的处理方式:
- try-catch-finally
- throws
异常对象的生成方式:
- 由虚拟机自动生成:
- 由开发人员手动创建:
对异常的处理方式(三种):
-
捕获:
-
try-catch-finall
-
try-finally
-
try - catch
-
-
直接抛出:throw
-
捕获再抛出:throws-throw
重写方法声明抛出异常的原则:
- 子类重写方法抛出的异常要小于等于父类被重写方法抛出的异常