我正在尝试了解使用 new 运算符创建Java对象时的大小。
考虑我正在创建一个类
public class NewClass {
NewClass() { }
}
当我使用NewClass
创建NewClass nc = new NewClass();
的实例时。在堆中创建的NewClass
的大小是多少?
~Jegan
答案 0 :(得分:9)
分析是最好的方法,但你可以得到一个好的估计:
每个对象8个字节(裸露开销),以及字段。
最终结果增加到最接近的8个字节的倍数。
另请参阅我的示例here,了解如何计算更复杂对象的内存使用情况。注意:这些规则可能因VM而异,并且可能随着VM的较新版本的出现而改变。我估计只适用于Sun JVM,尽管我怀疑IBM的结果会类似。
答案 1 :(得分:0)