您的位置:首页 > 其它

io

2016-05-31 15:37 295 查看
InputStream的作用是用来表示那些从不同数据源产生输入的类:包括
字节数组      ByteArray
String对象   StringBuffer
文件            File
管道        Piped
一种由其他种类的流组成的序列   SequenceInputStream  (两个或多个InputStream对象转换成单一InputStream)

OutputStream决定了输出所要去的目标 
字节数组   ByteArray
文件     File
通道         Piped

装饰器类为FilterInputStream/FilterOutputStream

 FilterInputStream类型有2个功能:a.DataInputStream可以读取不同的基本类型数据以及String对象  b.其他FilterInputStream则在内部修改InputStream的行为方式:1是否缓冲2是否保留它所读过的夯3是否把单一字符推回输入流等
DataInputStream
BufferedInputStream
LineNumberInputStream
PushbackInputStream

无缓冲输入为特殊情况,一般都缓冲

FilterOutputStream类型
DataInputStream
PrintStream
BufferedOutputStream

 

InputStreamReader/OutputStreamWriter 适配器模式

 Reader和Writer面向字符,兼容Unicode,目的为了提供国际化功能

PrintStream可视化打印所有的基本数据类型以及String对象

DataOutputStream的目的是将数据元素置入“流”中,是DataInputStream能够可移植地重构它们

使用readLine()时应该使用BufferedReader,除此种情况之外,DataInputStream认识IO类库的首选成员

自我独立的类

RandomAccessFile适用于由大小一致的记录组成的文件,可以使用seek()将记录从一处转移到另一处,然后读取或者修改,getFilePointer()查找当前所处的文件位置,搜寻方法只适用于文件。不是InputStream或OutputStream继承层次结构,实现了DataInput和DataOutput接口(DataInputStream和DataOutputStream也实现了这两个接口),它和这两个继承层次结构没有任何关联。

 

标准io

System.in(未被包装,在读取System.in之前必须对其进行包装)、System.out、System.err(后两者被包装成了PrintStream)

总结

io中用到了装饰器模式和适配器模式 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: