什么时候才用到assert呢?
1、assert(i>0);//throws an AssertionError if i<=0的情况下
2、其方式有2种形式:
一种是,assert Expression1;
二种是,assert Expression1:Expression2;
Expression1 总是应该是产生一个布尔值
Expression2 可以是得出一个值的任意表达式。这个值用于生成显示更多调试信息的String消息。
3、断言在默认的情况下禁止使用的,要在编译的时候启用它,需要使用source1.4标记:javac -source1.4 Test.java
4、如要要在运行时启用它,可以使用:-enableassertions or -ea标记
当然要在运行时禁用它,可以使用:-da or -disableassertions标记。
如果在系统类中使用它,可以使用 -esa or -dsa标记。还可以在包的基础上启用它或者禁用它的。
5、断言的放置:可以在预计正常的情况下不会到达的任何位置上放置断言。
断言可用于验证传递给私有方法的参数。不该用于验证传递公有方法的参数,因为不管是否启用断言,公有方法都必须检查其参数的。不过既可以在公有方法中也可以在非公有方法中利用断言测试后置条件。
6、断言不应该以任何的方式改变程序的状态。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:30
阅读量:82
阅读量:85
阅读量:57
阅读量:73