由于咱们平时不会用java自带的assert断言,基本都是junit之类的成熟框架,之因此会想到这个,是由于在java9的ArrayDeque中看到的以下的源码:java
assert既然是为了调试测试程序用,应该不在正式生产环境下用吧,可是这个源码中为何会有呢?框架
assert使用的方式,有以下的方式:eclipse
一、assert <boolean表达式>
若是<boolean表达式>为true,则程序继续执行。
若是为false,则程序抛出AssertionError,并终止执行。
二、assert <boolean表达式> : <错误信息表达式>
若是<boolean表达式>为true,则程序继续执行。
若是为false,则程序抛出java.lang.AssertionError,并输入<错误信息表达式>。jvm
固然默认jvm是没有开启断言的,好比Idea能够配置改为这样,eclipse估计也是差很少的,开关-enableassertions或-ea来开启:测试
好比我写个以下的例子:3d
输出:调试