0

たとえば、assertsを使用している間


try{ 
 assert email!=null : "Email is required"
} catch (AssertionError ae) {
 System.out.println(ae.getMessage());
}

上記のプリントEメールが必要です。式:email!= null

この余分なメッセージは必要ありません。式:email!= null部分文字列を使用できることはわかっていますが、それはハックです。

4

2 に答える 2

3

ここで誤用してassertいます。プログラムの流れを制御するためのものではありません。ここを使用する必要がありifます。

assertこの状態が発生しないことが確実な場合にのみ使用してください。その場合、アプリケーションはクラッシュし、問題が発生したものを出力するはずです。アプリケーションの起動時にアサートがオフになっている可能性があることに注意してください。

于 2012-05-07T06:22:39.580 に答える
0

簡単な方法はありません。これassertは通常、適切なプログラム操作中に発生してはならないことであることに注意してください。そのため、関連するメッセージはデバッグ専用です。

公式ドキュメントから:

詳細メッセージはユーザーレベルのエラーメッセージではないため、通常、これらのメッセージを個別に理解できるようにしたり、国際化したりする必要はありません。詳細メッセージは、失敗したアサーションを含むソースコードと併せて、フルスタックトレースのコンテキストで解釈されることを目的としています。

于 2012-05-07T06:24:44.997 に答える