今天正好遇到了,就记一下
一.作用:
仅用与编写单元测试, 一般不用于生产环境
assert 理论上和 if 类似, 但是assert 仅仅用于测试, 不能用于业务
from jdk 1.4
二.assert 关键字(Java断言)
1. 使用断言
要添加断言,只需使用assert关键字并为其赋予布尔条件
boolean dd = false;
try {
assert dd == true;
} catch (AssertionError e) {
System.out.println(e.getMessage()); // null
e.printStackTrace();
}
boolean dd = false;
try {
assert dd == true : " dd is false";
} catch (AssertionError e) {
System.out.println(e.getMessage()); // dd is false
e.printStackTrace();
}
断言将抛出一个异常信息用于构造 AssertionError
2. AssertionError处理
注意这个抛出的是Error , 而不是被捕获的 Exception, 因此不需要尝试捕获(try catch)
AssertionError extends Error
3. 在IDE中启用断言
如果发现断言无效, 则可能时ide没配置