我是一名新手Java用户。最近我了解到out
(我们在System.out.println
中使用的)是一个Java标准输出对象。
我的问题是:我从未自己创建过这个对象,也没有找到任何创建此对象的代码。那么它是如何可以被访问和使用的呢?
另外,我认为System
是一个类名。如果是这样,那么out
是否是System
类的静态成员,因为我们在不创建System
类的新对象的情况下访问out
?
我是一名新手Java用户。最近我了解到out
(我们在System.out.println
中使用的)是一个Java标准输出对象。
我的问题是:我从未自己创建过这个对象,也没有找到任何创建此对象的代码。那么它是如何可以被访问和使用的呢?
另外,我认为System
是一个类名。如果是这样,那么out
是否是System
类的静态成员,因为我们在不创建System
类的新对象的情况下访问out
?
是的,System是一个类,out是该类的静态成员变量。
public final class System {
public static final PrintStream out = ...;
public static final PrintStream err = ...;
public static final InputStream in = ...;
...
}
请参阅Java文档中的System类(链接)
是的,这存在于System对象中:
public final static PrintStream out = null;
学习一种语言(并得到正确的答案)的好方法是查看API源代码。
在 System.java
中
...
public final static PrintStream out = null;
...
您无需创建对象即可访问静态成员。