Javaのアサーションのサンプルです。
目次
説明 | assertとは |
アサーションを有効にして例外を発生させる |
assertとは
assert 条件式 : 文言(省略可); |
- プログラムのテストの検証で使用します。
- javaコマンドの引数に-eaを付けて実行したときのみ条件式の判定が行われます。(java -ea クラス名)
→条件式がtrueのときは、何も起こりません。
→条件式がfalseのときは、java.lang.AssertionErrorの例外が発生し、文言が表示されます。 - コロンと文言は省略可能です。
- 以下は、Oracleのassertのリンクです。
https://docs.oracle.com/javase/jp/8/docs/technotes/guides/language/assert.html
アサーションのサンプルです。
package test1;
public class Test1 {
public static void main(String[] args) {
int num1 = getNum(2);
}
public static int getNum(int a) {
assert a == 1 : "引数が1ではありません";
return a;
}
}
11行目は、assertを使用しています。引数のaが1でない場合、例外が発生し文言が表示されます。
ただし、引数に-eaをつけないで実行した場合、例外は発生しません。
アサーションを有効にして例外を発生させる
アサーションを有効にするためにEclipseで引数に-eaを付けて実行します。
1.javaファイルを右クリックして「実行」→「実行の構成」をクリックします。
2.「引数」のタブをクリックして「VM引数」に-eaと入力し実行をクリックします。
3.コードが実行されると、java.lang.AssertionErrorの例外が発生しコードに設定した文言が表示されます。
関連の記事
Java 例外処理のサンプル(検査例外)
Java 例外処理のサンプル(非検査例外)
Java throw 作成した例外を投げる/例外を更に投げる