Java IO流體系中經常使用的流分類

Java輸入/輸出流體系中經常使用的流分類(表內容來自java瘋狂講義)java

注:下表中帶下劃線的是抽象類,不能建立對象。粗體部分是節點流,其餘就是經常使用的處理流。網絡

流分類 使用分類 字節輸入流 字節輸出流 字符輸入流 字符輸出流
  抽象基類 InputStream

OutputStream性能

Reader Writer
節點流 訪問文件 FileInputStream FileOutStream FileReader FileWriter
訪問數值 ByteArrayInputStream ByteArrayOutStream CharArrayReader CharArrayWriter
訪問管道 PipedInputStream PipedOutStream PipedReader PipedWriter
訪問字符串     StringReader StringWriter
處理流 緩衝流 BufferedInputStream BufferedOutputStream BufferedReader BufferedWriter
轉換流     InputStreamReader OutputStreamWriter
對象流 ObjectInputStream ObjectOutputStream    
抽象基類(過濾) FilterInputStream FilterOutputStream FilterReader FilterWriter
打印流   PrintStream   PrintWriter
推回輸入流 PushbackInputStream   PushbackReader  
特殊流 DataInputStream DataOutputStream    

 

 

 

 

 

 

 

 

 

 

——————————————————————————————————————————————————————————————————spa

總結:對象

1.Java IO是採用的是裝飾模式,即採用處理流來包裝節點流的方式,來達到代碼通用性。ip

2.處理流和節點流的區分方法,節點流在新建時須要一個數據源(文件、網絡)做爲參數,而處理流須要一個節點流做爲參數。字符串

3.處理流的做用就是提升代碼通用性,編寫代碼的便捷性,提升性能。it

4.節點流都是對應抽象基類的實現類,它們都實現了抽象基類的基礎讀寫方法。其中read()方法若是返回-1,表明已經讀到數據源末尾。io

相關文章
相關標籤/搜索