1.3.11 小结 这部分的难点就是类比较复杂,尤其是每个类的构造方式,我认为记住下面这个图比记类的继承关系更好些
$ i9 g2 _ ^0 @1 F" L) v9 ` 字节流:# {/ b5 ~, r4 t9 u- ]
InputStream
" Q! Y4 O2 z% m0 V9 Y |-- FileInputStream (基本文件流); B+ ^3 H! F2 J x% }
|-- BufferedInputStream( H" d/ v2 i3 {, n
|-- DataInputStream
$ ^1 C) l$ Y/ I) M* W8 O. X' B4 _ |-- ObjectInputStream
5 B P5 U! p9 W! ~ j% Y0 J OutputStream 同上图9 ~% S2 P% U9 F6 \3 H; |
BufferedInputStream DataInputStream ObjectInputStream 只是在 FileInputStream 上增添了相应的功能,构造时先构造FileInputStream! s" j. ]+ I9 o8 x6 f% d
字符流:
& A, e5 C0 T/ a) Q Reader$ Y/ X2 e7 v$ N
|-- InputStreamReader (byte->char 桥梁)
7 q6 F( Z9 j! T8 V' E0 ]! L |-- BufferedReader (常用)* y E( R2 Q4 ` m2 V( x `
Writer
* `, I' r8 j# p: {" J2 i |-- OutputStreamWriter (char->byte 桥梁)
, `, S3 v7 T7 f' f" k4 [ |-- BufferedWriter
3 L0 ~' g3 _! f6 ]+ {) Z |-- PrintWriter (常用)! T9 a% z+ N" `. `7 u) ]& `" m( S) U
随机存取文件 RandomAccessFile |