Java IO流分類與記憶方法
在Java IO流體系中,理解節點流和包裝流的區別是掌握IO編程的關鍵。
一、核心分類標準
1. 節點流(Node Stream)
- 直接對接數據源:直接連接物理IO設備(文件、網絡、內存等)
- 基礎功能:提供最基礎的讀寫能力
- 命名特征:通常包含數據源類型名稱(如
File
、ByteArray
、Piped
)
2. 包裝流/處理流(Wrapper Stream)
- 裝飾節點流:必須包裝另一個流(節點流或其他包裝流)使用
- 增強功能:提供緩沖、編碼轉換、數據格式化等高級功能
- 命名特征:通常包含功能描述(如
Buffered
、InputStreamReader
、Data
)
二、快速區分方法
記憶口訣
“節點流對數據源,包裝流加功能鏈,
構造方法看參數,獨站還是包別人。”
判斷步驟
-
看構造方法:
- 節點流:參數是文件路徑/URL/數據源(如
new FileInputStream("file.txt")
) - 包裝流:參數是另一個流對象(如
new BufferedInputStream(其他流)
)
- 節點流:參數是文件路徑/URL/數據源(如
-
<