Java緩衝流與壓縮流誰封裝誰?

時間 2021-10-21 06:06:11

1樓:

前面回答已經到位了,

其實這個問題,應該這麼去想,就好理解了。

本質上,是為了除了資料流,以前題主列舉的都是接受outputStream的構造方法,也就是多型是實現類,處理問題的本質都一樣,只是呼叫順序,處理的類不同。

就類名可以看出,如果是為了處理zip格式的檔案,ZipOutputStream zos = new ZipOutputStream(new BufferedOutStream(csum)),顯然會更勝一籌,前者就會把資料先用zip的類封裝,然後再放到緩衝流,這就沒必要了,最好的做法就是第二種,緩衝流接收資料,用專門的zip輸出流類處理,效能上我沒試過,不過應該是有影響的。

2樓:

本質上就是呼叫父類建構函式向上向下轉型的問題,不存在這兩個誰封裝誰你可以看成:

BufferedOutputStream bos = new BufferedOutputStream(new OutputStream (csum));

ZipOutputStream zos = new ZipOutputStream(new OutStream(csum));

以 ZipOutputStream 為例,檢視原始碼可以看到:

是誰最早提出的大象流定義?

徐方鑫 按照 軟體定義安全 SDN NFV新型網路的安全揭秘 中第8頁所述 由於openflow交換機流表數目的限制,SDN控制器程式難以在大規模的網路環境中靜態部署全部的表項。如果採用動態部署的方式,則流表與交換機之間的通訊效能直接受到交換機控制層面CPU能力的監製 一方面,頻寬指標難以達到資料平...

到灌籃高手完結為止,櫻木和流川誰更厲害?誰的發展前景更大?或者去美國櫻木流川和澤北誰能混的更好?

蠕醬 櫻木集訓投了2w球已經很難了 而全國大賽時流川楓就已經說了自己投了幾百萬球 櫻木的200倍還是多少,不記得了 老爹讓櫻木以3倍的訓練量去追趕,沒毛病吧 小葩永亮 作者在他的作品裡有體現。被挖出來了,就是那句著名的 你想成為明日花道嗎 也就是預示著未來進入nba的是櫻木花道。上圖是作者原作品 上...

ios12到底怎麼樣呢 跟11 4 1究竟誰流暢 6s公升級會不會卡?

海風 打個比方,iOS12就相當於當年微軟公司在Vista失敗後,勵精圖治而推出的win7。注定要和iOS4 iOS7都成為iOS歷史上經典的系統版本。蘋果公司之所以推出iOS12,既間接承認了iOS11是乙個不大成功的版本,同時也更多是為挽回iOS口碑。畢竟,作為一家全世界最知名最盈利的企業,也是...