首页 新闻 搜索 专区 学院

c# class 多个 实例化后,实例的方法是共享内存还是每个实例的方法单独分配一块内存

0
[待解决问题]

在c#中,当我们将一个class实例化后,系统会给class里面的方法分配内存吗?如果分配的话是每个实例化的方法都分配还是实例化对象共享一块方法分配的内存?求科普。

c#
lorgine的主页 lorgine | 菜鸟二级 | 园豆:245
提问于:2013-09-13 09:12
< >
分享
所有回答(2)
0

方法的实例只有一份,所有实例共享。

Launcher | 园豆:45045 (高人七级) | 2013-09-13 09:38

谢谢,有么有什么官方的说明。

支持(1) 反对(0) lorgine | 园豆:245 (菜鸟二级) | 2013-09-13 11:49

@lorgine: 《编译原理》

支持(1) 反对(0) Launcher | 园豆:45045 (高人七级) | 2013-09-13 13:14
0

类是引用类型的,实例化时会在托管堆中创建一块内存,存放类中的变量值,及类本身的一些标识信息,而方法最终于也是操作变量,所以不会给方法分配内存

另外,类每实例化一次时都会重新创建新的内存空间,当类实例不在被任何对象引用时,GC 就会遍历到这个对象,然后把它标记为删除,在某一时刻清除实例所占用的内存。

推荐好书 《你必须知道的.net》 看完后你对.net 将会更加了解

Zery | 园豆:6139 (大侠五级) | 2013-09-27 21:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册