断言和日志

处理错误机制

Java的处理错误机制:

  1. 抛出异常
  2. 日志
  3. 断言

  断言一般在程序开发和测试阶段使用,断言不应该用来处理异常通知和异常记录,而只是用来在测试时确定错误位置。

  而日志则是在程序的整个生命周期都可以使用的策略工具。


断言介绍

  断言机制允许测试期间向代码中加入一些检查语句,发布后这些语句会被移除。

1
2
assert 条件;
assert 条件 : 表达式;

  assert关键字会检测后面结果,若为false,则前者抛出AssertionError异常,后者传入AssertionError构造器,通过表达式转换为消息字符串。

  注意断言要开启,在配置中加-ea

1
2
Exception in thread "main" java.lang.AssertionError
at asserts.Test.main(Test.java:19)

  AssertionError对象并不存储表达式的值,因为设计者不希望以此暗示程序员从断言中恢复程序的运行。


日志介绍

  日志可以记录程序运行轨迹和数据历史,日志记录器有层次结构,也就是记录级别,通过分类可以有效的提取出如Error,Exception等异常信息。

  目前常用的日志即Log4j,相关内容可以参阅我的这篇博客SpringBoot日志简单整理

  日志可以进行过滤和格式化,程序也可以配置多个日志记录器,默认情况下日志由配置文件控制,但也可以用编程来代替。


参考博客和文章书籍等:

《Java核心技术 卷Ⅰ》

因博客主等未标明不可引用,若部分内容涉及侵权请及时告知,我会尽快修改和删除相关内容