java基礎(System.errとSystem.out)詳細


今日はある同僚がSystem.errとSystem.outを使っています。
資料を見てまとめました。
1.JDK文書の両者に対する解釈:
out:「標準」出力ストリーム。このストリームはすでに開いています。出力データを受け入れる準備ができています。通常、このストリームは、ディスプレイ出力またはホスト環境またはユーザによって指定された他の出力先に対応する。
err:「標準」エラー出力ストリーム。このストリームはすでに開いています。出力データを受け入れる準備ができています。通常、このストリームは、ディスプレイ出力またはホスト環境またはユーザによって指定された他の出力先に対応する。この出力ストリームは、通常、連続監視されないあるファイルまたは他のターゲットにユーザ出力ストリーム(変数outの値)がリダイレクトされていても、すぐにユーザの注意を引くべき他の情報を表示するために使用される。
2.outとerrの違いは、outはしばしばキャッシュ付きであり、errはキャッシュなしである(デフォルト設定は変更可能)。標準エラーで印刷されたものはすぐに画面に表示されますが、標準出力で印刷されたものはあといくつの文字を蓄積してから一緒にプリントできます。アプリケーションで標準出力と標準出力を混ぜて使うとこの問題が見られます。
テストコード:

public class Test2 {
  static{
    System.out.println("1");
  }
  public static void main(String[] args) {
    System.err.println("2");
    new Test2();
  }
  public Test2() {
    System.out.println("3");
  }
  
}
テスト結果:1,3の位置は相対的に変わらず、2の位置はランダムに現れます。できるだけ混ぜないようにしてください。
3.ロゴ4 jのログを使ったら、System.errはログに記入されます。System.outはできません。
ps:System.errを印刷します。eclipseでは赤色です。System.outは青いです。
以上のjava基礎(System.errとSystem.out)の詳細は、小編集が皆さんに提供している内容の全てです。参考にしてほしいです。どうぞよろしくお願いします。