「アサーション」は、プログラムに関する前提をテストできる Java TM プログラミング言語の文です。
「これはこうあるべき」という前提条件を確認するためにアサーションを使うことができる。デバッガのチェックポイントみたいなものだけれど、コードに書き込んで判定することができるのが異なっている感じ。
式
assert Expression1;
assert Expression1 : Expression2;
- Expression1
- boolean式。この式がfalseの場合はAssertionErrorをスローする。
- Expression2
- AssertionErrorのコンストラクタに渡される値。
コードへのアサーションの挿入
- アサーションは、public メソッド内の引数チェックに使用しないでください
- 引数のチェックは通常、メソッドの仕様 (または規約) の一部だから
- アプリケーションの正しい動作に必要な処理を実行するためにアサーションを使用しないでください
- アサーションが無効になっている場合もありえるから
内部の不変条件
if (i % 3 == 0) {
...
} else if (i % 3 == 1) {
...
} else {
assert i % 3 == 2 : i;
...
}
制御フローの不変条件
作成中ですわ