【问题标题】:Why out variable in System class is "static"? [duplicate]为什么系统类中的变量是“静态的”? [复制]
【发布时间】: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


【解决方案1】:

那是因为静态变量可以在不实例化类的情况下使用。所以,像打印这样简单的事情,你使用out 大部分你不必创建System 类的实例,并且可以只使用类名访问变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-15
    • 2013-05-25
    • 1970-01-01
    • 1970-01-01
    • 2013-03-20
    • 1970-01-01
    • 2020-09-29
    • 2014-03-24
    相关资源
    最近更新 更多