Java中断言的概念及简单使用

什么是断言机制?

java的编译阶段检查代码!

假设要进行如下的计算:

double y = Math.sqrt(x);

为了让程序健壮,你会先进行测试检查并抛出异常而不让x的值为负数。

if(x<0) throw new IllealArgumentException("x < 0");

但是,就算是测试结束了,以后实际运行时x的值不会小于0。这种测试代码会一直保留在你的程序中。如果程序中有太多的
检查,程序的运行就会慢好多。

如果在测试阶段会有这种检查,而在发布阶段能自动删除这些东西。该多好! 这就是断言机制。

断言的使用表达式:

   assert  条件: 表达式

满足条件执行下行代码,不满足条件执行表达式

public class Test1 {
    public static void main(String[] args) {
        int i1 = 1;
        int i2 = 0;
        //满足条件不执行,不满足执行
        assert i2!=0:"i2变量现在是" + i2;
        int a = i1/i2;
        
    }
}

 

在Eclipse中如何开启断言?

 window-->perference-->java-->installed JreS -->edit-->default Vm arguments :  -ea

 

posted on 2019-08-12 14:49  纯白溪笑  阅读(1432)  评论(0编辑  收藏  举报