栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么不能将RandomAccessFile强制转换为Inputstream?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么不能将RandomAccessFile强制转换为Inputstream?

RandomAccessFile
扩展
Object
,并且
扩展
InputStream

如果您想从中获得帮助

InputStream
RandomAccessFile
我认为实现包装器类是您最简单的选择。幸运的是的唯一抽象方法
InputStream
read()

RandomAccessFile实现了DataInput,该数据输入将依次转为DataInputstream和InputStream

DataInputStream
是的子类
InputStream
,它也恰好实现
DataInput
。继承和接口实现树如下所示:

InputStream      DataInput       /         /                     /            DataInputStream   RandomAccessFile

您可以在

DataInputStream
任何可以使用
InputStream
或的地方使用
DataInput
。您可以在
RandomAccessFile
任何可以使用的地方使用
DataInput

但是您不能使用强制转换在这样的继承层次结构中上下浮动。特别是,将一个类强制转换为子类(或实现的接口)将引发,

ClassCastException
除非该对象恰好是子类的实例。

即使两个类都发生扩展

Object
,但这并不意味着它们是可互换的。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/509721.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号