如果我在代码中使用同一对象的多个实例,那么每个单独对象的实例方法是否需要内存,或者所有这些对象是否共享相同的实例方法?
它可能会对内存使用产生很大影响。
提前感谢任何见解。
John Doner
答案 0 :(得分:2)
这可能取决于您使用的语言; - )
在我所知道的所有语言实现中,方法都是共享的。例如,在大多数C ++实现中,该方法获取一个隐含的第一个参数(this),该参数指向该对象的特定实例。
答案 1 :(得分:1)
您没有说明您正在谈论的语言。但是,通常,单独的实例方法不会占用更多内存。
说实话,你可能不应该考虑这些细节,因为现代语言设计师已经为你考虑过这个问题,他们可能选择了最好的东西。因此,如果没有真正的理由保留另一个副本(因为所有方法实际上都是相同的),它们将不会保存另一个副本。