我是编程的初学者。我有这个不同寻常的疑问:
请告诉我System.out
和PrintStream.out
之间的区别。
答案 0 :(得分:2)
System
是一个具有一些静态字段的类,可以让您的Java程序访问非常基本的操作系统工具。
OutputStream
是一个提供将二进制数据写入流(例如文件或网络连接)的方法的类。
PrintStream
是OutputStream
的子类,它提供了将文本和其他类型的变量(如boolean
或int
)打印到基础OutputStream
的方法。 1}}。例如,它将字符串转换为二进制(以便可以写出来)。
System.out
是PrintStream
的一个实例,它连接到标准输出流。
out
中的字段PrintStream
(与System.out
不同)不是静态字段。这意味着您需要PrintStream
的实例才能访问它。 myPrintStream.out
而不是PrintStream.out
。
out
个实例中的字段PrintStream
是正在包装的基础OutputStream
。
这适用于PrintStream
的实现,以将其二进制输出写入。
它也是protected
,因此只有这些实现才能访问它。
您无法直接访问System.out.out
(或myPrintStream.out
)(但您不需要,System.out
将转发您write
}
答案 1 :(得分:0)
System.out.println()
是通过控制台打印的标准方法,而作为包装器的PrintStream
更专门用于写入网络流和文件。