JAVA的assert关键字用法


Java #assert2014-04-11 15:47
assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语句都将忽略!),如果要开启断言检查,则需要用开关-enableassertions或-ea来开启。
 
assert关键字语法很简单,有两种用法:
 
1、assert <boolean表达式>
如果<boolean表达式>为true,则程序继续执行。
如果为false,则程序抛出AssertionError,并终止执行。
 
2、assert <boolean表达式> : <错误信息表达式>
如果<boolean表达式>为true,则程序继续执行。
如果为false,则程序抛出java.lang.AssertionError,并输入<错误信息表达式>。
下面一段代码
public class AssertTest {  
  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        assert (1>0);  
        System.out.println("1:no problem!");  
        assert (1<0) : "error!";  
        System.out.println("2:no problem!");  
    }  
  
}  

不加-ea参数运行时结果:
1:no problem!
2:no problem!
加了之后的结果:
Exception in thread "main" java.lang.AssertionError: error!
 at com.hihicd.tajo.AssertTest.main(AssertTest.java:11)
1:no problem!
assert主要用在调试测试程序,而且一般IDE都是默认关闭assert的,所以在拥有JUnit这么好的测试工具的基础上,也不太会用得着它。

相关文章

粤ICP备11097351号-1