方法会影响我的对象大小吗?

5
在.NET中,一个对象中的方法数量或者方法的大小(即代码量)是否会影响该对象在实例化时所使用的内存?例如:一个有3个int属性和1个方法的对象会比一个有3个int属性和20个方法的对象占用更多的内存吗?如果是,那么静态方法会占用更少的内存吗?请注意:我意识到实际调用一个方法可能会实例化其他对象或变量来使用内存,我的问题只涉及在调用构造函数后它们所使用的内存量。
2个回答

9

方法会占用一些内存,但是非常少。方法表以及为方法生成的代码由对象的每个实例共享。


方法确实会占用内存,但是它是在同一类型的对象之间共享的吗?(即,一个对象使用的“方法内存”与100个相同类型的对象使用的“方法内存”相同吗?) - Rick

2

一个有3个int属性和1个方法的对象会比一个有3个int属性和20个方法的对象占用更多的内存吗?

答案是否定的。方法不是任何特定实例的一部分,它们属于类型。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接