2

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

import java.io.*;

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

2 回答 2

7

为什么我们不能在这个类的对象所在的类println()的帮助下调用方法:PrintStreamout

 PrintStream.out.println("Hello");

三个原因:

a) 它不是静态的 - 您需要 PrintStream 类的实例

b)它具有protected可见性-因此它不可访问。

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

于 2012-05-20T03:44:08.383 回答
1

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

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

于 2012-05-20T03:48:31.453 回答