System.out和Printstream之间的区别

时间:2013-02-06 10:08:14

标签: java

这些陈述是否有任何区别

System.out.println(error);

PrintStream ps = new PrintStream((OutputStream)System.out);
ps.println(error);

3 个答案:

答案 0 :(得分:5)

System.out已经是PrintStream

PrintStream ps = new PrintStream((OutputStream)(System.out));

只会再次包裹它,这似乎毫无意义。

答案 1 :(得分:1)

除了您复制out

之外,没有区别

来自JavaDoc

  

     
    

public static final PrintStream out

  

它已经是PrintStream类型。

答案 2 :(得分:1)

基本上没有区别。第二种方式太长了。 out是System类中java.io.PrintStream类型的静态字段。您可以直接使用它而不是将其转换为Outputstream并再次将其包装在另一个PrintStream引用中。无论如何,它们都将使用相同的底层PrintStream对象。