簡體   English   中英

Java DataBuffer類的原因是什么?

[英]What is the reason for the Java DataBuffer class?

當我要研究Java中BufferedImage類的內部實現時,遇到了DataBuffer 最后使用DataBuffer保存空白圖像數據,該數據只能用相關的ColorModelSampleModel實現來解釋。 但是,除了事實之外,我不了解DataBuffer的真正用途,因為它用一些讀寫助手包裝了相同類型的數組。

DataBuffer是一個抽象,因此BufferedImage不需要了解實際的像素存儲。

像素通常存儲在陣列中,但是可以是單個打包或交錯的陣列,也可以是單個或多個帶狀陣列。 將其乘以支持的傳輸類型的數量,您將看到有很多不同的情況需要處理。 將其委托給專門的實現很有意義,並且避免對BufferedImage本身了解所有這些不同類型。

但這甚至根本不必是數組。 例如,我已經成功實現了由nio ByteBuffer和內存映射文件支持的DataBuffer

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM