核心技术:异常、断言和日志

来自Wikioe
Eijux讨论 | 贡献2020年10月20日 (二) 02:15的版本 →‎异常分类
跳到导航 跳到搜索


错误处理

异常分类

Java 中的异常层次结构.png


异常对象都是派生于Throwable 类的一个实例:

  1. Error:类层次结构描述了Java 运行时系统的内部错误和资源耗尽错误。应用程序不应该抛出这种类型的对象。
  2. Exception
    1. RuntimeException:由程序错误导致的异常属于RuntimeException;
    2. 其他异常:由于像I/O 错误这类问题导致的异常;


派生于RuntimeException 的异常包含下面几种情况:

  • 错误的类型转换。
  • 数组访问越界i
  • 访问null 指针

不是派生于RuntimeException 的异常包括:

  • 试图在文件尾部后面读取数据。
  • 试图打开一个不存在的文件。
  • 试图根据给定的字符串查找Class 对象, 而这个字符串表示的类并不存在。


非受查异常 与 受查异常:

  1. 非受查(unchecked) :异常派生于Error 类或RuntimeException 类的所有异常称为;
  2. 受查(checked) :所有其他的异常称为。

声明受査异常

如何抛出异常

创建异常类

捕获异常

捕获异常

捕获多个异常

再次抛出异常与异常链

finally 子句

带资源的 try 语句

分析堆栈轨迹元素

使用异常机制的技巧

使用断言

断言的概念

启用和禁用断言

使用断言完成参数检查

为文档假设使用断言

记录日志

基本日志

高级日志

修改日志管理器配置

本地化

处理器

过滤器

格式化器

日志记录说明

调试技巧