assert 断言

断言,常用于调试程序,生产环境不适用(影响性能),用于防御式编程。

语法:

assert <布尔表达式>
assert<布尔表达式>:<错误信息>

当布尔为假时,抛出AsserttionError,并附带错误信息。

2个特性:

1:assert 默认是不启用的(要启用需添加关键字)
2:assert 抛出的异常是AssertionError错误,继承自Error,是不可恢复的,表示为严重问题。

注意:assert 不能等价于if else。

2种情况不可使用:

1:对外公开的方法中。(强契约)
2:在执行逻辑代码的情况下。

3种情况可使用:

1:在私有方法中放置assert(弱契约,校验作者自己)作为输入参数的校验
2:流程控制中不可能达到的区域,(即:执行到此处是错误的)。
3:建立程序探针:断言某个变量的关系,如果不满足,即表明程序出现了异常,业务没必要进行下去了。

Eclipse默认关闭断言。

你可能感兴趣的:(assert 断言)