gpt4 book ai didi

java - Java中的引用变量有大小吗?

转载 作者:搜寻专家 更新时间:2023-10-31 19:57:54 24 4
gpt4 key购买 nike

在C++中我们使用sizeof()运算符,在Java中我们可以使用哪个函数来检查对象的大小?

我的基本疑问是java中的引用变量是否有任何大小。考虑以下示例:

SampleClass obj = new SampleClass();

在这里,obj 有任何大小吗?如果是,我们如何在 Java 中检查它?

最佳答案

obj 是变量,不是对象。 objvalue 是一个引用 - 可能是 4 或 8 个字节,具体取决于 JVM。

值引用的对象的大小依赖于 JVM。由于多个对象可以相互引用,因此在 Java 中以任何特别有用的方式讨论对象的大小通常很棘手……通常重要的是如果特定对象符合垃圾条件,可能会有多少内存可用集合,这取决于第一个对象引用的其他对象 - 以及是否还有其他对象也引用这些对象。

显然,对象的“原始”大小也很重要,至少有点更容易预测(至少是近似值),但它仍然是特定于 VM 的,不能在执行时很容易被请求。 (您可以创建数百万个对象,防止它们被垃圾收集,并测量内存差异,但这是我所知道的最接近的对象,至少在调试器 API 之外。)

关于java - Java中的引用变量有大小吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7730655/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com