4.1异常
1. Exception异常类是所有异常类的父类
4.2异常处理
1. try、catch、finally、throw、throws
1) try:存放监控异常的代码
2) catch:捕获异常并处理
3) finally:无论异常与否都要执行
4) throw:用于认为显式地抛出异常
a) 用法:throw new 异常类([“异常信息”])
b) 抛出后,转到catch块,可用对象名.getMessage()获取异常信息
5) throws:用于在方法声明中回避该方法中不处理的异常
a) 另一种用法,在函数中使用,抛出异常信息
b) 可指定过个异常类型
2. 异常类
1) Exception:异常的父类
2) RuntimeException:运行时异常
3) ArithmeticException:算术异常
4) ArrayIndexOutOfBoundsException:数组下标越界异常
5) NullPointerException:空对象异常
6) ClassNotFoundException:相关类找不到异常
7) NumberFormatException:数字格式异常
8) IOException:输入/输出异常
9) FileNotFoundException:相关文件找不到异常
10) SQLException:SQL异常
3. try块应该至少有一块catch块或finally块
4. 多重catch:多个catch与一个try搭配
5. try…catch嵌套
6. 自定义异常
1) 必须是Exception的直接子类或间接子类
4.4检验异常和非检验异常
1. 检验异常:程序代码中必须捕获的异常,否则无法通过编译
2. 非检验异常:不捕获也能通过编译;RuntimeException及其子类属于非检验异常
3. 每一方法都默认回避RuntimeException异常,即throws RuntimeException
4.5断言
1. 在程序中加入的合法检查语句
2. 检测程序时可以使用,而不用写try…cathc
3. 用法:assert(条件):[”异常信息”]
4. 须先启用断言功能