A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 根号5 中级黑马   /  2012-4-28 16:44  /  1869 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么说read(byte[] b, int off, int len) 和read(byte[] b),这两个方法都是通过调用read()方法来实现的呢?求解答

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

2 个回复

倒序浏览
InputStream类中的方法:
int available()
          返回此输入流方法的下一个调用方可以不受阻塞地从此输入流读取(或跳过)的字节数。
void close()
          关闭此输入流并释放与该流关联的所有系统资源。
void mark(int readlimit)
          在此输入流中标记当前的位置。
boolean markSupported()
          测试此输入流是否支持 mark 和 reset 方法。
abstract  int read()
          从输入流读取下一个数据字节。
int read(byte[] b)
          从输入流中读取一定数量的字节并将其存储在缓冲区数组 b 中。
int read(byte[] b, int off, int len)
          将输入流中最多 len 个数据字节读入字节数组。
void reset()
          将此流重新定位到对此输入流最后调用 mark 方法时的位置。
long skip(long n)
          跳过和放弃此输入流中的 n 个数据字节。
因此可以直接调用read()方法。
回复 使用道具 举报
同一个类中方法名相同,参数列表不同的方法为重载。read(byte[] b, int off, int len) 和read(byte[] b)是read()的重载
InputStream为输入字节流,其中read(byte[] b, int off, int len) 和read(byte[] b)都为读取字节码到byte[] b中。
这两者都是要从目标文件中读取字节流,也就是read()的功能,可以说底层和read()方法相同,但是具有功能的扩充。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马