关于断言 assert

158 阅读1分钟

一、断言

在Java中常常用assert 关键字来限制参数传递(检验方法参数的有效性)。非公有的方法通常应该使用断言( assertion )来检查它们的参数。不同于一般的有效性检查,断言如果失败,将会抛出 AssertionError 不同于一 般的有效性检查,如果它们没有起到作用,本质上也不会有成本开销。由于断言固定抛出AssertionError异常,因此在公共方法中最好不要用,因为如果抛出异常很难辨别出这是什么原因导致的。

public class Hello {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        assert false;
        System.out.println("hello");
    }
}

输出

hello

QQ截图20220528223139.png 输出

Exception in thread "main" java.lang.AssertionError
	at Hello.main(Hello.java:7)

总结 在 assert 后面的值为 false 时会报错

参考文章:blog.csdn.net/a123123sdf/…