win和web下静态方法使用区别

zlcp520 2010-11-24 10:59:15
win和web下静态方法使用区别

静态方法的好处是不用实例化,调用方便,运行速度快,但是占用内存,程序运行就会开辟内存空间放静态成员.显然吃太多内存是件很不爽的事情,那应该建立个怎么样的原则来使用静态方法呢,什么情况下用静态方法?


同时win和web下静态方法又有微妙的区别.win下是单发,web是并发系统.我的理解是win用多了静态方法会浪费内存,而web下多用静态方法比不停的实例化来的更省服务器内存.非静态方法的会N个用户同时使用就会消耗A*NM的内存,而静态的话则始终是消耗AM内存.

理解对吗?
...全文
98 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangwei1020 2010-11-24
  • 打赏
  • 举报
回复
声明为static的字段、属性类型本身,而不属于任何一个实例。所以,在内存中永远只会存在一份。
而声明为static的方法是不能操作类内部非static的变量的,、。

所以无论是Web还是WinForm,都能起到节省内存的作用。

当然,使用的时候一定要注意。比如你在一个类A里面定义了一个static的变量int a = 0;
在类B里面通过 A.a = 1;修改了值,

那么你在类C里面调用的时候A.a == 1 而不是 A.a == 0
gongsun 2010-11-24
  • 打赏
  • 举报
回复
应该注意 垃圾回收。
gongsun 2010-11-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luminji 的回复:]
web下多用静态方法比不停的实例化来的更省服务器内存

要看情况而定,关注牛人的说法
[/Quote]

杯具。。。
zhangwei1020 2010-11-24
  • 打赏
  • 举报
回复
http://msdn.microsoft.com/zh-cn/library/98f28cdx(VS.80).aspx
static关键字详解
  • 打赏
  • 举报
回复
web下多用静态方法比不停的实例化来的更省服务器内存

要看情况而定,关注牛人的说法

110,502

社区成员

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

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

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