我不知道System类在java中代表什么。系统是什么意思,它是否像控制台一样,或者以某种方式连接到控制台?
答案 0 :(得分:2)
java.lang.System
类并不代表任何东西。它是一个包含大量static
方法和三个static
字段的类。基本上,它是用于与主机系统交互的方法的“实用程序类”。值得浏览javadoc以更好地了解System
“抓包”中的内容“
静态字段包含对应用程序的“标准输入”,“标准输出”和“标准错误”流的引用。这些可以连接到控制台,或者它们可以连接到其他源/接收器以用于字符数据。例如,如果您运行这样的Java应用程序:
java com.example.MyApp < input.txt
然后标准输入流(在System.in
中)将从“input.txt”文件而不是控制台读取。
从OO设计的角度来看,这是一个很糟糕的例子:IMO,这是一个错误。然而,这个课程历史悠久,并且它被嵌入到常见用法中,因此纠正这种设计错误是不可能的。实际上,即使在Java 1.1中也无法纠正错误......因为修复程序会大大破坏向后兼容性。