Java中流的分类都有哪几种

2014-11-22 10:00:04 · 作者: · 浏览: 16

1) 从数据类型分:字节流和字符流


字节流类:


抽象父类: InputStream,OutputStream


实现类:


BufferedInputStream 缓冲流-过虑流


BufferedOutputStream


ByteArrayInputStream 字节数组流-节点流


ByteArrayOutputStream


DataInputStream 处理JAVA标准数据流-过虑流


DataOutputStream


FileInputStream 处理文件IO流-节点流


FileOutputStream


FilterInputStream 实现过虑流-字节过虑流父类


FilterOutputStream


PipedInputStream 管道流


PipedOutputStream


PrintStream 包含print() 和 println()


RandomAccessFile 支持随机文件


抽象父类:Reader, Writer


实现类:


BufferedReader


BufferedWriter


PrintWriter


CharArrayReader


CharArrayWriter


FileReader


FileWriter


FilterReader


FilterWriter


InputStreamReader


OutputStreamWriter


PipedReader


PipedWriter


StringReader


StringWriter



2) 从数据方向分:输入流和输出流


InputXXXXX , OutputXXXXX


3) 从流的功能分:节点流和过滤流(使用到油漆工模式)


节点流用来传输数据。


过滤流用来封装节点流或者其他过滤流,从而给节点流或其他的过滤流增加一个功能。