繁体   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