|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
令人可喜的是java现在已经开源了,所以我想我上述的想法也许有一天会实现,因为java一直都是不断创新的语言,每次创新都会给我们惊喜,这也是我喜欢java的一个原因。
一.stream
代表的是任何有才能产出数据的数据源,或是任何有才能吸收数据的吸收源。在Java的IO中,一切的stream(包含Input和Outstream)都包含两品种型:
1以字节为导向的stream
以字节为导向的stream,暗示以字节为单元从stream中读取或往stream中写进信息。以字节为导向的stream包含上面几品种型:
Inputstream
1)ByteArrayInputStream:把内存中的一个缓冲区作为InputStream利用
2)StringBufferInputStream:把一个String对象作为InputStream
3)FileInputStream:把一个文件作为InputStream,完成对文件的读取操纵
4)PipedInputStream:完成了pipe的观点,次要在线程中利用
5)SequenceInputStream:把多个InputStream兼并为一个InputStream
Outstream
1)ByteArrayOutputStream:把信息存进内存中的一个缓冲区中
2)FileOutputStream:把信息存进文件中
3)PipedOutputStream:完成了pipe的观点,次要在线程中利用
4)SequenceOutputStream:把多个OutStream兼并为一个OutStream
2以Unicode字符为导向的stream
以Unicode字符为导向的stream,暗示以Unicode字符为单元从stream中读取或往stream中写进信息。以Unicode字符为导向的stream包含上面几品种型:
Inputstream
1)CharArrayReader:与ByteArrayInputStream对应
2)StringReader:与StringBufferInputStream对应
3)FileReader:与FileInputStream对应
4)PipedReader:与PipedInputStream对应
Outstream
1)CharArrayWrite:与ByteArrayOutputStream对应
2)StringWrite:无与之对应的以字节为导向的stream
3)FileWrite:与FileOutputStream对应
4)PipedWrite:与PipedOutputStream对应
以字符为导向的stream基础上对有与之绝对应的以字节为导向的stream。两个对应类完成的功效不异,字是在操纵时的导向分歧。如CharArrayReader:和ByteArrayInputStream的感化都是把内存中的一个缓冲区作为InputStream利用,所分歧的是前者每次从内存中读取一个字节的信息,尔后者每次从内存中读取一个字符。
两种不现导向的stream之间的转换
InputStreamReader和OutputStreamReader:把一个以字节为导向的stream转换成一个以字符为导向的stream。
<p>
而学习JAVA我觉得最应该避免的就是:只学习,不思考,只记忆,不实践! |
|