Java 教程
/ Java assert 关键字
Java assert 关键字
定义和用法assert 关键字用于评估一个布尔表达式,如果该表达式评估结果为 false,则抛出 AssertionError 异常。当异常被抛出时,我们说断言
定义和用法
assert
关键字用于评估一个布尔表达式,如果该表达式评估结果为 false,则抛出 AssertionError 异常。当异常被抛出时,我们说断言失败。
可以添加一个可选的表达式,该表达式在断言失败时将用作异常消息。
默认情况下,断言是禁用的。除非启用断言,否则 assert
语句将被忽略。
断言的目的是在调试和测试程序时,清晰地标记出程序执行了非预期的操作的地方。
实例
使用 assert
来测试表达式的真值:
public class Main { public static void main(String[] args) { // 启用断言 ClassLoader loader = ClassLoader.getSystemClassLoader(); loader.setDefaultAssertionStatus(true); // 运行 assert 示例 AssertExample example = new AssertExample(); example.run(); } } class AssertExample { public void run() { int a = 12; try { assert a == 12; // 没有失败消息的断言 assert a == 12 : "a 不是 12"; assert a == 15 : "a 不是 15"; } catch (AssertionError e) { System.out.println(e.getMessage()); } } }
运行实例 »
点击 "运行实例" 按钮查看在线实例
在这个例子中,首先启用了断言。然后,在 AssertExample 类的 run 方法中,有三个断言语句。前两个断言(a == 12)都会通过,因为变量 a 的值确实是 12。第三个断言(a == 15)会失败,因为它不正确,因此会抛出一个 AssertionError 异常,并显示消息 "a 不是 15"。