当前位置: 代码迷 >> Java相关 >> 问一个关于抽象类不能被实例化的问题
  详细解决方案

问一个关于抽象类不能被实例化的问题

热度:165   发布时间:2006-02-19 08:42:00.0
问一个关于抽象类不能被实例化的问题
就是InputStream这个类是个抽象类,不能被实例化,也就是说抽象类是没有对象的是吧,可是,那为什么System.in是InputStream的对象呢,难道System.java中的这条语句:public final static InputStream in = nullInputStream();所定义的变量in不是对类InputStream的实例化吗?
谢谢!
搜索更多相关的解决方案: 实例  InputStream  java  变量  System  

----------------解决方案--------------------------------------------------------
看不懂你说的是什么?
可能我理解能力太差了。
----------------解决方案--------------------------------------------------------
她的意思是InputStream是抽象类,
在public final static InputStream in = nullInputStream();
里in不就是InputStream的实例了吗?为什么?
我也不大明白,
按常理来说,抽象类是不能被直接实例的啊!

----------------解决方案--------------------------------------------------------
nullInputStream();
我在帮助稳当里没有找到这个方法啊!
这是什么方法啊?
或者它是个什么类啊?
本人求知欲望很强!
因为什么都不懂!

----------------解决方案--------------------------------------------------------
bagger:
谦虚的很啊~~
向你学习
----------------解决方案--------------------------------------------------------
System类的原代码中发现in不指向如何对象,
代码如下(你们也可以自己去看System类):
public final static InputStream in = nullInputStream();

如下面的例子:
private static InputStream nullInputStream() throws NullPointerException {
if (currentTimeMillis() > 0)
return null;
throw new NullPointerException();
}

[此贴子已经被作者于2006-2-20 13:26:08编辑过]


----------------解决方案--------------------------------------------------------
  相关解决方案