0

私はエラーを完全に処理する Java RuntimeError を不器用に使用しています。唯一の問題は、派生してスローした実行時エラーが発生した場所を示す迷惑なトレースが表示されることです。このトレースを抑制する方法は?

参考までに、問題は、スローしないクラスをサブクラス化し、サブクラスをスローする必要があることです。それは、「プログラムを書き直して C プログラムのように読めるようにする」か、「実行時エラーを使用してスロー仕様の要件をバイパスする」ことでした。明らかに、現在、スロー仕様の要件は非常に逆効果であることがわかっています。「workIsDone」変数の束を維持することを含まない他の回避策をいただければ幸いです。

4

1 に答える 1

1

コードがなければ、何について話しているのかを理解するのは非常に困難ですが、一般に、スタック トレースは、例外をキャッチしてそれを呼び出すprintStackTrace()ハンドラーから取得されます。スタック トレースは、何か要求されない限り表示されません。ここで、例外が (たとえば) AWT イベント スレッド スタックの一番上まで到達した場合、デフォルト ハンドラーはそれをこのように出力します。

原則として、例外を処理する必要があります。一部のスーパークラス メソッドが例外を宣言しないという事実を回避するために、実行時例外を使用することは優れた戦略になる可能性がありますが、その場合は常にそれらの例外をキャッチする責任があります。できない場合、つまり、代わりに他のコードがそれらをキャッチしようとしている場合、これは悪い戦略であり、使用できません。

于 2012-04-25T17:39:12.537 に答える