这些陈述是否有任何区别
System.out.println(error);
和
PrintStream ps = new PrintStream((OutputStream)System.out);
ps.println(error);
答案 0 :(得分:5)
System.out
已经是PrintStream
,
PrintStream ps = new PrintStream((OutputStream)(System.out));
只会再次包裹它,这似乎毫无意义。
答案 1 :(得分:1)
答案 2 :(得分:1)
基本上没有区别。第二种方式太长了。 out是System类中java.io.PrintStream类型的静态字段。您可以直接使用它而不是将其转换为Outputstream并再次将其包装在另一个PrintStream引用中。无论如何,它们都将使用相同的底层PrintStream对象。