Java assert 关键字
示例
使用 assert 测试表达式的真值
public class Main {
public static void main(String[] args) {
// Enable assertions
ClassLoader loader = ClassLoader.getSystemClassLoader();
loader.setDefaultAssertionStatus(true);
// Run the assert example
AssertExample example = new AssertExample();
example.run();
}
}
class AssertExample {
public void run() {
int a = 12;
try {
assert a == 12; // Assertion without a fail message
assert a == 12 : "a is not 12";
assert a == 15 : "a is not 15";
} catch (AssertionError e) {
System.out.println(e.getMessage());
}
}
}
定义和使用
The assert
关键字评估一个布尔表达式,如果表达式计算结果为 false
,则抛出 AssertionError
异常。当异常被抛出时,我们说断言失败了。
可以添加一个可选的表达式,如果断言失败,该表达式将用作异常消息。
断言默认情况下是禁用的。 assert
语句会被忽略,除非断言被启用。
断言的目的是在调试和测试程序时明确标记程序何时执行了非预期操作。