关于java中System.in的疑惑与探讨(初学java,请多指教)

今天在学Java编写的一段代码中,突然对System.in有了好奇心,问题详细如下 

通过查看System类源码后发现,System.in就是一个InputStream类型且值为null的对象,源代码如下:

下面是我编写的一些代码,运行正常:

 

 

 

我就疑惑这里的System.in就是一个简简单单的空的InputStream类型的对象,那他有什么作用呢??那么接下来我模仿着System自己也来创建一个这个类型的空值对象,并把System.in换成我自定义的变量demo,代码如下:

 

 

 

接下来运行程序:

 

问题来了:System.in 与Test.demo 同样都是一样的简简单单的空值对象,为什么我的运行就出错呢??System.in还是有什么特殊之处??

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值