2

out は System クラスのフィールドであり、PrintStream のオブジェクトをprint(System.out.getClass());戻りクラス java.io.PrintStream として参照していることを理解しています。

また、システムクラスでの out の宣言は次のようになるはずですpublic static PrintStream out;

ここでの私のクエリは、実際には System Class の「out」フィールドの値です。
のようにすることはできません
public static PrintStream out = new PrintStream(System.out);

ちょっと興味があるんだけど

4

3 に答える 3

3

クラスのソース コードを確認すると、Systemネイティブ メソッド呼び出しによって設定されていることがわかります。

 private static native void setOut0(PrintStream out);
于 2013-09-04T11:04:04.157 に答える
0

outはクラスの静的メンバーでありSystem、のインスタンスですPrintStreamシステムクラスから

public static final PrintStream out;
于 2013-09-04T11:06:33.370 に答える