assert关键字是在JDK1.4的时候引入的,其主要的目的是断言。在JAVA中的断言指的是执行到某行代码处时一定是预期的结果
public class Demo{
public static void main (String [] args){
int num = 10 ;
//假设中间经过了20行代码
//期望中num的值会变为20
assert num ==20 : "num的结果不是20" ;
System.out.println("num = " + num) ;
}
}
在没有启用断言的情况下,程序的执行结果为:
默认情况下断言是不应该影响程序运行的,也就是说JAVA在解释程序的时候,断言是默认不起作用的。
下面启用断言:java -ea Demo.java 结果如下:
在JAVA里面断言的设计要比C++强得多,它不会影响到程序的执行