为了账号安全,请及时绑定邮箱和手机立即绑定

视频有一段代码没看懂

视频有一段代码没看懂

相信光变成光 2016-12-16 20:14:24
InputStream in =new FileInputStream("book.xml");为啥不是FileInputStream in =new FileInputStream("book.xml");
查看完整描述

4 回答

?
focusmickey

TA贡献1条经验 获得超0个赞

这个就是多态的一种表现 可以看看有关多态的就明白了
查看完整回答
反对 回复 2016-12-17
?
qq_炽冬阳_0

TA贡献1条经验 获得超0个赞

这就相当于上转型,FileInputStream 是InputStream 的子类

查看完整回答
反对 回复 2016-12-17
?
暗黑吉奥

TA贡献5条经验 获得超0个赞

InputStream是一个抽象类, FileInputStream继承了该抽象, 只要你接下来没有使用子类才添加的方法, 就可以用InputStream来代替FileInputStream. 当然你那样的写法是正确的. 但是使用InputStream 是更好的写法, 和代码复用有关系.




查看完整回答
反对 回复 2016-12-17
?
dky

TA贡献93条经验 获得超26个赞

遇到这种问题, 我一般会从抽象说起, 但是呢, 现在我要说的是,  这句话的意思是   这个白人是人,  没错吧 ,  fileinputstream是inputStream的派生类也即其中一种,in指代的就是后面new出来的fileinput对象 , 采纳谢谢

查看完整回答
反对 回复 2016-12-17
?
慕粉3291149

TA贡献71条经验 获得超52个赞

FileInputStream实现了InputStream接口

所以可以用InputStream的引用去指向一个FileInputStream对象,即InputStream in =new FileInputStream("book.xml");

当然也可以  FileInputStream in =new FileInputStream("book.xml");

查看完整回答
反对 回复 2016-12-17
  • 4 回答
  • 0 关注
  • 1583 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信