源代码中的System.in这样写有何意义?

源代码中的System.in这样写有何意义?

问题描述:

小白比较好奇:
在java源代码:System.java中有这样一段代码:
public final static InputStream in = null;
十分不理解,这个in变量的存在还有什么意义?
System.out.println(System.in);
的打印结果并不是null。

你是哪里的源码。。。
我的是这样的,只是声明了一下,后面自己去赋值的
public static final InputStream in;

图片说明
就在lang包的System.java里面,我的jre是1.7的。

肯定有地方去赋值的,这时java中获取控制台输入的数据流

这里的 System.in 是一个被实例化的 InputStream 对象