0

assert ステートメントがプログラムを停止する方法がわかりません。例外がスローされますか、それとも何か他のものですか?例外がスローされた場合、次のようなことを行ってこの例外をキャッチできますか:

try {  
    assert result != null;
} catch (Exception ex) {
    //some code
}
4

2 に答える 2

5

assert ステートメントがプログラムを停止する方法がわかりません。

コード

assert test;

とほとんど同じです

if (!$disabledAssertions && test) throw new AssertionError();

例外やエラーはキャッチできますが、それは良い考えではありません。

エラーは例外ではないため、catch(Exception)キャッチされません。

于 2013-10-02T14:54:45.630 に答える
2

投げAssertionErrorます。詳細は、JLS §14.10 The assert Statementで説明されています。

アサーションは無効にできることに注意してください。その場合assertはノーオペレーションです。

于 2013-10-02T14:54:37.593 に答える