Javaのお勉強その9
- アサーション
プログラマーがプログラム実行時に常に真にならないとassertする条件式を書き、実行時に条件が満たされているかチェックする仕組みのこと
アサート文は次の形式になっている。
assert 式1; assert 式1:式2;
式1はチェックする条件式、1行目ではfalseだとAssetionErrorがスローされる。2行目では式2がAssertionErrorがスローされるだけでなく、式2のメッセージが表示される。式2は値を持たせる必要がある。
assertを使うと、評価を行う分だけ、実行速度は下がる。
-source 1.3をつけてコンパイルすると、assert文がコンパイルエラーになる。識別子として使用できるが、警告が表示される。1.4以降の数値をつけてコンパイルするとassertという識別子は利用不可になる。
assertを利用する場合は、実行時に-eaオプションをつける。次の指定方法がある。
java -ea Test -ea -ea:クラス名 -ea:... (作業ディレクトリの名前のないパッケージ内のassertを有効にする) -ea:パッケージ名
アサーションを無効化する実行オプションは-daである。
複数の矛盾するオプションを指定した場合は、詳細な設定をした方が優先される。
assertはエラー処理ではないことに注意。
0 件のコメント:
コメントを投稿