由於咱們平時不會用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
輸出:調試