【发布时间】:2018-03-23 14:35:48
【问题描述】:
为什么java.lang包的System类中的“out”变量在JAVA中是“静态”的? 我知道 System 是一个静态类,而 PrintStream 类中的 println() 不是静态方法。这两者有什么关系?
【问题讨论】:
-
它是静态的,所以你不需要实例化 System 来调用它。你能想象必须在你想使用 System.out.print(ln)() 的每个类中创建一个 System 实例的恐怖吗?
-
System是一个类。所以如果要直接访问System.out,需要是静态字段。 -
一个不是静态的例子会像这样 - 'System sys = new System(); sys.out.println("这令人沮丧");
-
谢谢。最近几天我有这种愚蠢的怀疑。我只是 OOP 概念的初学者,而 JAVA 是 4 天前开始的。感谢您抽出宝贵时间回答这个疑问。
标签: java