社区
Java SE
帖子详情
inputstream中的read方法
qiaoguang123
2014-08-07 10:15:58
为什么inputstream中的read()是抽象的,而read(byte[])却不是,为什么不都弄成抽象的或非抽象的
...全文
227
2
打赏
收藏
inputstream中的read方法
为什么inputstream中的read()是抽象的,而read(byte[])却不是,为什么不都弄成抽象的或非抽象的
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vnvlyp
2014-08-07
打赏
举报
回复
抽象类的原则是尽量只让子类实现基础方法,而自身实现通用方法,否则的话直接设计成接口不就行了,何必要有抽象类。 read(byte[])可以通过循环调用read实现,所以子类不必要实现它(当然通常子类会override这个方法去写自己的实现的,但这只是效率上的考虑),而read就不能这样了,它属于基础方法,不同的inputstream实现是不同的,所以需要子类来实现,因此只能是抽象的。
doer_ljy
2014-08-07
打赏
举报
回复
你自己看一下InputStream的实现就明白了。 简单的说: read(byte[]) 调用 read(byte[],int,int) read(byte[],int,int) 调用 read() 明白了吧,read()是基础, 另外两个其实是实现了一个读取的不同方式,而读取功能本身的实现是写在read()里的, 需要继承这个抽象类的类自己实现。
InputStream
的
read
方法
本文深入解析JDK
中
InputStream
的
read
方法
,包括单字节读取和批量读取的实现原理,阐述如何通过不同方式读取文件内容,以及在处理ASCII与Unicode字符时的区别。同时,提供两个具体案例展示其应用。
InputStream
read
()
方法
详解
本文深入解析了Java7
中
InputStream
类及其
read
方法
的工作原理,详细介绍了如何通过
read
方法
读取二进制数据,并解释了字节与字符的区别以及不同编码方式对读取操作的影响。
InputStream
read
()
方法
本文介绍了在Android串口通信
中
遇到的问题及解决方案,重点讨论了
InputStream
的
read
()
方法
。在尝试读取串口返回数据时,通过
read
()
方法
读取输入流并存储到缓冲区。起初遇到
read
()
方法
无法退出的情况,经查阅文档发现该
方法
会阻塞直到数据可用。通过在调用
read
()前检查available()
方法
的返回值,确保数据存在后再进行读取,解决了问题。
Java
中
的
InputStream
中
的
read
()
方法
返回参数问题
博客介绍了
InputStream
中
read
()
方法
在不同参数情况下的返回值。传入byte数组时,返回读入数据在数组
中
的长度;不带参数时,返回字符对应的ASCII码,将其强转为byte类型放入数组,用FileOutputStream的write()
方法
可还原数据。
InputStream
的
read
()
方法
本文探讨了 Java
中
InputStream
类的使用
方法
,特别是
read
方法
在实际应用
中
的表现,包括如何确保正确读取指定长度的数据。
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章