在JDK1.4中增加了Assert的新功能,用于开始、调试时期的错误检测,它可以通过-ea 的JVM参数关闭,关闭以后对程序的性能没有任何影响。

最好的教程 请见:http://java.sun/j2se/1.4.2/docs/guide/lang/assert.html

简单总结下几点注意点

不要在public方法中使用assert来代替参数检查。公有方法的参数检查应该有该方法通过条件判断等方式完成,从而抛出理想的异常,而其只会抛出:AssertionError,对异常并不是很明确。AssertionError 继承自Error。

它的语法有两种:

assert Expression1

Expression1

为条件判断,当其为true时程序正常,为false时,程序抛出AssertError。

assert Expression1

: Expression2

:Expression

1

同上,

Expression2必须是有返回值的函数或者其它字符串、变量等。

3. 编译: javac -source 1.4 MyClass.java

启动: java -ea MyClass

Eclipse的话,需要在Run=>JVM Argements 中增加-ea参数

在Java中,assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语句都将忽略!),如果要开启断言检查,则需要用开关-enableassertions或-ea来开启。

assert关键字语法很简单,有两种用法:

1、assert

如果为true,则程序继续执行。如果为false,则程序抛出AssertionError,并终止执行。

2、assert :

如果为true,则程序继续执行。如果为false,则程序抛出java.lang.AssertionError,并输入。

也就是你需要在执行java命令时加入参数-ea,如

java -ea xxx

现在来看,个人是不推荐使用的。

更多推荐

java assert函数_Java Assert 用法简介