CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

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

楼主proud(床上无英雄)2003-09-04 06:59:38 在 .NET技术 / C# 提问

当要重复调用某一个方法或属性的时候,通过实例调用好还是通过类调用好,哪个更快?哪个更节省内存?请指点! 问题点数:0、回复次数:7Top

1 楼jiezhi(风满袖)回复于 2003-09-04 08:10:14 得分 0

看方法或者屬性是否為靜態的了。  
  如果是非靜態的,則必須生成類的實例后才能訪問,如果是靜態的,則可以直接訪問。  
  靜態方法或者屬性是不屬于任何類的實例的,所有實例公用一個副本。  
  而非靜態方法則是在每個實例都占用一段存儲區域。  
   
  我不知道你的“通过实例调用好还是通过类调用好”是什么意思?Top

2 楼zhpsam109(JACKY.昊昊)回复于 2003-09-04 08:15:26 得分 0

静态的属性和方法才可以通过类来调用!重复调用一个方法要看具体的情况需要为实例调用还是为类调用!Top

3 楼xjliang007(痛并快乐着)回复于 2003-09-04 08:37:16 得分 0

靜態的方法不用在每個方法中生成實例,理論上是占優的,但中時也就靈活性不如了。Top

4 楼zhongwanli(㊣【为了老婆,二次重构____然后升★★】㊣)回复于 2003-09-04 09:02:29 得分 0

如果是在重复调用的情下来讲速度各内存的使用多少的话,  
  个人认为是静态方法要占优一些,但从程序的的可扩展性和灵活性来讲呢  
  那就应该是实例成员要占优一些!  
  Top

5 楼uranusI(uranus)回复于 2003-09-04 09:10:32 得分 0

我说说自己的感受,类的静态成员在第一次访问该类时初始化,之后会一直存在,而你所谓的需要实例化才能使用的成员则在你实例化时才分配内存并初始化,在你不需要时可以释放,在内存的控制上灵活一些。  
  所以一些公共的方法用静态的会比较省,但字段最好是需要时才实例化,否则会一直占着空间的。  
  还有我感觉把静态成员集中放在一起作为一个单独的类比较舒服,静态动态杂在一起很乱。Top

6 楼ms44(ms44)回复于 2003-09-04 09:36:53 得分 0

反复要调用的话,还是静态的好Top

7 楼rouser(流淌的小溪)回复于 2003-09-04 09:44:52 得分 0

實例成員優先考慮  
  然後全局的再考慮靜態成員  
  這樣比較復合OO封裝原則  
  說到速度,你最好測試一下  
  沒有多大差別,可以忽略Top

相关问题

  • 新手请教 实例和静态方法?
  • 静态变量应用实例有一处不懂。
  • 静态变量和实例变量的区别?
  • 请教高手 静态方法 和 实例方法 的区别
  • 实例成员和静态成员的问题
  • 关于静态成员和实例成员?请看下面程序.......
  • 是使用实例化来调用还是使用静态类型?
  • 请教:静态变量和实理的问题?(性能方面)
  • 我为我的窗体定义了一个静态成员来实现对实例的计数,但我怎么调用这个类的静态成员啊
  • vb.net中是否有静态类?难道非得用C++或者C#才能创建不被用实例化的静态类??

关键词

  • 内存
  • 靜態
  • 调用
  • 实例
  • 静态
  • 成员
  • 實例
  • 方法
  • 类
  • 需要

得分解答快速导航

  • 帖主:proud

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo