Java アサーションのサンプル

Javaのアサーションのサンプルです。

確認環境
・Java 8
・Eclipse 4.8

目次

assert

assert 条件式 : 文言(省略可);
  • 引数に-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のサンプル

△上に戻る