就IO流的不同維度進(jìn)行分類討論,為大家?guī)沓R姷膸追Njava中IO類型。
1.流的流向
輸出:把程序(內(nèi)存)中的內(nèi)容輸出到磁盤、光盤等存儲設(shè)備中。
輸入:讀取外部數(shù)據(jù)(磁盤、光盤等存儲設(shè)備的數(shù)據(jù))到程序(內(nèi)存)中。
2.流的操作顆粒度
字節(jié)流:以字節(jié)為單元,可操作任何數(shù)據(jù)【主要由InputStream和outPutStream作為基類】
字符流:以字符為單元,只能操作純字符數(shù)據(jù),比較方便【主要由Reader和Writer作為基類】
3.流的角色
節(jié)點(diǎn)流:可以從/向一個特定的IO設(shè)備(如磁盤,網(wǎng)絡(luò))讀/寫數(shù)據(jù)的流,也叫【低級流,主要由】
處理流:用于對一個已存在的流進(jìn)行連接和封裝,通過封裝后的流來實(shí)現(xiàn)數(shù)據(jù)的讀/寫功能,也叫【高級流】
注意:一個IO流可以既是輸入流又是字節(jié)流又或是以其他方式分類的流類型,是不沖突的。比如FileInputStream,它既是輸入流又是字節(jié)流還是文件節(jié)點(diǎn)流。
以上就是java中IO的分類情況,根據(jù)維度不同,IO的類型也會發(fā)生變化,學(xué)習(xí)的時候可以結(jié)合圖片來進(jìn)行理解。更多關(guān)于“Java培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓(xùn)經(jīng)驗(yàn),課程大綱更科學(xué)更專業(yè),有針對零基礎(chǔ)的就業(yè)班,有針對想提升技術(shù)的好程序員班,高品質(zhì)課程助力你實(shí)現(xiàn)java程序員夢想。