63

これはおそらく初心者の質問ですが、私を助けてくれることを願っています. :)私はこのようなものを持っています:

try
{ 
//try to do something there
}
catch (IOException e)
{
//handle the exception 
e.printStackTrace();
}

NetBeans IDE を使用していますが、何らかの理由で printStackTrace に下線が引かれています。Alt+Enter を押すと、Throwable.printStackTrace() を削除する必要があると表示されます。これは何を意味するのでしょうか?これが何を意味するのか、誰かがより多くの洞察を与えることができますか? または、これを無視できますか?

ありがとう!

4

5 に答える 5

45

試す:

e.printStackTrace(System.out);
于 2011-08-18T00:06:20.393 に答える
21

それは単なる推奨事項です。日食では問題ありません-他のいくつかの回答のように、それを行うためのより従来の方法があることをIDEが伝えているだけだと思います。これはデバッグに便利であり、致命的なエラーが発生するときに、デバッグ モード (コンソール スイッチ -d など) を使用してこれらのログを収集するようにユーザーに通知する必要があります。

于 2011-08-18T00:16:41.953 に答える
14

おそらくprintStackTrace()、コンソールにスタックをダンプするだけで、実際にはエラーを処理していないためです。これは、適切なエラー処理 (必要な場合) に置き換え、出力を何らかのロガーに置き換えるまで、プレースホルダーとして機能します。

于 2011-08-18T00:08:32.410 に答える
10

e.printStackTrace();

ほとんどの場合コンソールであるデフォルトの ErrorStream に出力されるため、お勧めできません。

NetBeans はそれについて警告しているはずです。それについての良い習慣は、メッセージをログに記録することです。同じ参照に従ってください:

http://onjava.com/pub/a/onjava/2003/11/19/exceptions.html

編集 詳細については、最初のコメントを参照してください。

于 2011-08-18T00:08:42.010 に答える