2009-02-11 46 views
5

在.NET中,对象内的方法数量或方法大小(即代码量)是否会影响对象在实例化时所使用的内存量?方法是否会影响我的对象的大小?

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

如果“是”,做静态方法占用较少的内存?

请注意:我意识到,实际上调用一个方法可能实例将使用内存的其他对象或变量 - 我的问题只是涉及到他们调用构造函数后使用多少内存。

回答

9

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

+0

所以方法占用内存,但它是在同一类型的对象之间共享的? (即,用于1个对象的“方法存储器”与使用100个相同类型对象的“方法存储器”相同?) – Rick 2009-02-11 16:24:55

2

将与3种INT性质 和1种方法的对象需要更多的存储比 用3个INT属性和20种 方法的对象?

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

相关问题