System中有个一静态常量
public final static PrintStream out = null;
为什么out没有引用任何一个PrintStream类的实例对象,却可以调用print实例方法?
System.ou.print("hello world");
以下是PrintStream类中的print方法
public void print(Object obj) {
write(String.valueOf(obj));
}
public class Main {
public static void main(String[] args) {
System.out.println(System.out);
}
}
输出
java.io.PrintStream@d716361
并不是null
public final static PrintStream out = null;
这也只能说初始化的时候是null,不代表之后没有赋值