大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 IO流分類大全

IO流分類大全

更新時間:2020-11-19 17:22:27 來源:動力節(jié)點 瀏覽2608次

我們在初學(xué)Java時,不可避免地要學(xué)習(xí)到IO流,事實上,IO流對于初學(xué)者來說是一個很頭疼的東西,Java IO 體系看起來類很多,感覺很復(fù)雜,但其實是 IO 涉及的因素太多了。在設(shè)計 IO 相關(guān)的類時,編寫者也不是從同一個方面考慮的,所以會給人一種很亂的感覺,并且還有設(shè)計模式的使用,使得IO流分類更加復(fù)雜,所以本文特地對Java的IO流進行全面的分類。

我們將根據(jù)下面的IO流分類圖來對IO流進行介紹:

image.png

Java流的分類方法大致分為以下幾種:

1.按流向劃分,分為輸入流、輸出流

請注意,這里的流向是以程序的運行時內(nèi)存為參照的。

輸入流類名中包含關(guān)鍵字InputStream或Reader,輸出流類名中包含關(guān)鍵字OutputStream或Writer。

2.按操作的數(shù)據(jù)單元類型劃分,分為字節(jié)流、字符流

字節(jié)流操作的數(shù)據(jù)單元是8位的字節(jié)(byte),字符流操作的是16位的字符。

字節(jié)流類名中包含關(guān)鍵字InputStream或OutputStream,字符流類名中包含關(guān)鍵字Reader或Writer。

請注意,系統(tǒng)輸入輸出(System.in與System.out)都為字節(jié)流。

3.按流的角色來劃分,分為節(jié)點流與處理流

節(jié)點流是指程序可以向一個特定的節(jié)點讀寫數(shù)據(jù),直接連接數(shù)據(jù)源;

這個節(jié)點最常見的是文件,類名中包含關(guān)鍵字File;還可以是數(shù)組、管道、字符串,關(guān)鍵字分別為ByteArray/CharArray,Piped,String。

處理流并不直接連接數(shù)據(jù)源,它大多情況是對已存在的節(jié)點流進行包裝,是一種典型的裝飾器設(shè)計模式。使用處理流主要是為了更方便的執(zhí)行輸入輸出工作,如PrintStream,輸出功能很強大,推薦輸出時都使用處理流包裝。

注意:一個IO流可以即是輸入流又是字節(jié)流又或是以其他方式分類的流類型,是不沖突的。比如FileInputStream,它既是輸入流又是字節(jié)流還是文件節(jié)點流。

4.一些特別的的流類型

轉(zhuǎn)換流,轉(zhuǎn)換流只有字節(jié)流轉(zhuǎn)換為字符流,因為字符流使用起來更方便,我們只會向更方便使用的方向轉(zhuǎn)化。如:InputStreamReader與OutputStreamWriter。

緩沖流,有關(guān)鍵字Buffered,也是一種處理流,為其包裝的流增加了緩存功能,提高了輸入輸出的效率,增加緩沖功能后需要使用flush()才能將緩沖區(qū)中內(nèi)容寫入到實際的物理節(jié)點。但是,在現(xiàn)在版本的Java中,只需記得關(guān)閉輸出流(調(diào)用close()方法),就會自動執(zhí)行輸出流的flush()方法,可以保證將緩沖區(qū)中內(nèi)容寫入。

對象流,有關(guān)鍵字Object,主要用于將目標對象保存到磁盤中或允許在網(wǎng)絡(luò)中直接傳輸對象時使用(對象序列化),具體可參看博客Java序列化與反序列化。

推回輸入流,有關(guān)鍵字PushBack,當(dāng)程序調(diào)用推回輸入流的unread()方法時,系統(tǒng)回把指定數(shù)組內(nèi)容的內(nèi)容推回到一個推回緩沖區(qū)中,在調(diào)用read()方法讀入內(nèi)容時,就先從推回緩沖區(qū)中讀取,直到讀完推回緩沖區(qū)中內(nèi)容后才會從原輸入流中讀取。

流是一種抽象概念,它代表了數(shù)據(jù)的無結(jié)構(gòu)化傳遞。IO流就是以流的方式進行輸入輸出,因此,IO流也是以此為基礎(chǔ)來進行分類的。看完了本文對IO流分類的講解,小伙伴們是不是已經(jīng)徹底掌握了呢?如果還沒有掌握IO流的分類也沒有關(guān)系,本站的Java基礎(chǔ)教程里還有更詳細的講解,一定能讓你輕松掌握IO流分類。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 女人18毛片黄 | 国内主播大秀福利视频在线看 | 大杳蕉伊人狼人久久一本线 | 欧美成人免费tv在线播放 | 奇米777狠狠 | 天天操天天插 | 男女午夜影院 | 夜夜艹日日艹 | 国产精品高清视亚洲乱码 | 不卡久久 | 欧美日韩激情在线一区二区 | 日产精品一区二区 | 亚洲国产精品日韩高清秒播 | 四虎影视884a精品国产古代 | 久久免费视频精品 | 国产福利区一区二在线观看 | 亚洲日本中文字幕 | 国产一级特黄高清在线大片 | 亚洲国产99999在线精品一区 | 日本久久网 | 99视频只有精品 | 国产精品99精品久久免费 | 激情五月色婷婷在线观看 | 亚洲涩涩精品专区 | 久艹伊人 | 久久精品av77777 | 日本不卡二 | 91国内精品久久久久怡红院 | 欧美三级一区二区 | 97碰公开在线观看免费视频 | 国产伊人自拍 | 成人影院在线观看kkk4444 | 欧美精品久久久久久久久大尺度 | 色久综合在线 | 99在线在线视频免费视频观看 | 在线观看久草视频 | 特级中国aaa毛片 | 中文字幕第5页 | se在线播放 | 一级毛片在线播放免费 | 91视频国产一区 |