静态成员和实例成员哪个性能更优?

proud 2003-09-04 06:59:38
当要重复调用某一个方法或属性的时候,通过实例调用好还是通过类调用好,哪个更快?哪个更节省内存?请指点!
...全文
29 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
rouser 2003-09-04
  • 打赏
  • 举报
回复
實例成員優先考慮
然後全局的再考慮靜態成員
這樣比較復合OO封裝原則
說到速度,你最好測試一下
沒有多大差別,可以忽略
ms44 2003-09-04
  • 打赏
  • 举报
回复
反复要调用的话,还是静态的好
uranusI 2003-09-04
  • 打赏
  • 举报
回复
我说说自己的感受,类的静态成员在第一次访问该类时初始化,之后会一直存在,而你所谓的需要实例化才能使用的成员则在你实例化时才分配内存并初始化,在你不需要时可以释放,在内存的控制上灵活一些。
所以一些公共的方法用静态的会比较省,但字段最好是需要时才实例化,否则会一直占着空间的。
还有我感觉把静态成员集中放在一起作为一个单独的类比较舒服,静态动态杂在一起很乱。
zhongwanli 2003-09-04
  • 打赏
  • 举报
回复
如果是在重复调用的情下来讲速度各内存的使用多少的话,
个人认为是静态方法要占优一些,但从程序的的可扩展性和灵活性来讲呢
那就应该是实例成员要占优一些!
xjliang007 2003-09-04
  • 打赏
  • 举报
回复
靜態的方法不用在每個方法中生成實例,理論上是占優的,但中時也就靈活性不如了。
zhpsam109 2003-09-04
  • 打赏
  • 举报
回复
静态的属性和方法才可以通过类来调用!重复调用一个方法要看具体的情况需要为实例调用还是为类调用!
jiezhi 2003-09-04
  • 打赏
  • 举报
回复
看方法或者屬性是否為靜態的了。
如果是非靜態的,則必須生成類的實例后才能訪問,如果是靜態的,則可以直接訪問。
靜態方法或者屬性是不屬于任何類的實例的,所有實例公用一個副本。
而非靜態方法則是在每個實例都占用一段存儲區域。

我不知道你的“通过实例调用好还是通过类调用好”是什么意思?

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧