2

此外,方法的大小是否会影响每个对象占用多少空间(如果标题问题的答案是肯定的)?还是更像是对方法的引用,每个引用的大小相同?谢谢。

4

4 回答 4

4

方法不会将内存空间添加到实例变量,只会添加到类本身(当然也是一个 Object :-))。

于 2012-04-27T15:11:55.150 回答
2

类的方法和静态成员在 VM 中仅表示一次,作为类定义的一部分。每个单独实例的大小应该只受类中的非静态成员变量的影响。

于 2012-04-27T15:22:26.973 回答
1

每个对象都有对其类的引用。该类中方法的数量无关紧要。

非静态字段的数量对每个对象都有影响,因为每个对象都需要具有该字段。(除非 JVM 优化了该字段)

于 2012-04-27T16:31:05.963 回答
1

据我所知,方法不会影响对象的大小。它会增加文件大小,但不会增加对象大小。

于 2012-04-27T15:12:02.057 回答