黑马程序员_IO流体系

   ----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

Java中的流,可以从不同的角度进行分类。

    按照数据流的方向不同可以分为:输入流和输出流。

    按照处理数据单位不同可以分为:字节流和字符流。

    按照实现功能不同可以分为:节点流和装饰流。

 

节点流:

 

字节输入流

字节输出流

字符输入流

字符输出流

抽象基类

InputStream

OutputStream

Reader

Writer

访问文件

FileInputStream

FileOutputStream

FileReader

FileWriter

访问对象

ObjectInputStream

ObjectOutputStream

 

 

访问字符串

 

 

StringReader

StringWriter

访问数组

ByteArrayInputStream

ByteArrayOutputStream

CharArrayReader

CharArrayWriter

访问基本数据

DataInputStream

DataOutputStream

 

 

访问管道

PipedInputStream

PipedOutputStream

PipedReader

PipedWriter

 

 

 

 

 

 

 

 

 

 

 

 

装饰流:

 

字节输入流

字节输出流

字符输入流

字符输出流

抽象基类

FilterInputStream

FilterOutputStream

Reader

Writer

缓冲流

BufferedInputStream

BufferedOutputStream

BufferedReader

BufferedWriter

打印流

 

PrintStream

 

PrintWriter

字符装饰流

 

 

FilterReader

FilterWriter

特殊流:

 

字节输入流

字节输出流

字符输入流

字符输出流

抽象基类

InputStream

OutputStream

Reader

Writer

转换流

 

 

InputStreamReader

OutputStreamWriter

特殊流

SequenceInputStream

 

 

 

 

 

 

 

 

 

表格说明:

1FilterInputStreamFilterOutPutStream分别是InputStreamOutPutStream的子类,并不是抽象的;

2DataInputStreamDataOutputStream分别继承自FilterInputStream、FilterOutputStream,,为了方便记忆放入了节点流的表中;

 

一、InputStream体系:

从不同数据源产生输入的类,这些数据源包括:

1、  文件(硬盘)

2、  字节数组(内存)

3、  管道(PipedInputStream)

4、  其他流组成的序列(SequenceInputStream)

5、  其他数据源,如键盘、Internet

每种数据源都对应一个InputStream的子类。

InputStreamFilterInputStream为装饰类提供了一个基类。

二、OutputStream体系

该体系的类决定了输出去往的目的地,如文件、字节数组、管道、控制台等。

OutputStreamFilterOutputStream为装饰类提供了一个基类。

三、ReaderWriter体系与InputStreamOutputStream体系大致相同,只是其中的FilterReaderFilterWriter好像没多大用处。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值