为什么我们不能在PrintStream类的帮助下调用'println()'方法,其中out是这个类的对象?

时间:2012-05-20 03:42:34

标签: java println

为什么我们不能在PrintStream类的帮助下调用println()方法,其中out是此类的对象?

import java.io.*;

class Demo {
    public static void main(String[] args) {
        PrintStream.out.println("Hello");
    }
}

2 个答案:

答案 0 :(得分:7)

  

为什么我们无法在println()类的帮助下调用PrintStream方法,其中out是此类的对象:

 PrintStream.out.println("Hello");

三个原因:

a)它不是静态的 - 你需要一个PrintStream类的实例

b)它具有protected可见性 - 所以它不是accessibe。

c)out变量实际上是OutputStream - 所以它没有println方法。

要使用PrintStream,您需要执行以下操作:

final PrintStream ps = new PrintStream(new FileOutputStream(new File(filename)));
ps.println("Now is the time for all good men to come to the aid of their party.");
ps.close();

有关详细信息,请参阅Javadoc

答案 1 :(得分:1)

是什么格雷格说的。此外,如果您想要打印到控制台,您只需使用System.out.println("Manga Bunga");

如果你想使用PrintStream,请在实例化PrintStreat对象后使用println()方法。