包装 class 内存
Wrapper class RAM
我的教授未能解释的一件事是包装器 类(例如 Integer.*
或 Double.*
)是否占用了更多 RAM space,因为它们具有对象引用的格式,而不是原始数据类型。
是的,盒装打字需要更多 space 因为
- 引用它的指针(在现代非嵌入式架构上通常是 64 位)
- 对象的本机实现中的额外字段(例如,可能引用 class、id 等)
然而,在幕后,至少在理论上,JVM/Hotspot 可以根据它们的利用率优化一些盒装类型。
我的教授未能解释的一件事是包装器 类(例如 Integer.*
或 Double.*
)是否占用了更多 RAM space,因为它们具有对象引用的格式,而不是原始数据类型。
是的,盒装打字需要更多 space 因为 - 引用它的指针(在现代非嵌入式架构上通常是 64 位) - 对象的本机实现中的额外字段(例如,可能引用 class、id 等)
然而,在幕后,至少在理论上,JVM/Hotspot 可以根据它们的利用率优化一些盒装类型。