当前位置: 代码迷 >> .NET分析设计 >> c#静态类跟实例化类的纠结
  详细解决方案

c#静态类跟实例化类的纠结

热度:373   发布时间:2016-05-01 22:34:03.0
c#静态类和实例化类的纠结
最近调到c#这边,发现公司c#功能,绝大部分都是用的静态类实现的,这样用起来确实很方便。

我想问下各位大小几个问题:
1.静态类除了不能继承、占内存外,还有其他缺点嘛?
(注:所谓的扩展性,静态类通过不断的重载是可以实现所谓的“扩展的”)

2.既然静态类这么好用,可实例化类还有存在的必要吗?
------解决方案--------------------
现象明白,什么是class,什么是object

------解决方案--------------------
引用:
......
1.静态类除了不能继承、占内存外,还有其他缺点嘛?
......

静态类"长期"占用内存,而不是(更加)占内存,这是面向对象设计的需要,而非缺点
比如说,微软编写的Environment类
------解决方案--------------------
引用:
......
2.既然静态类这么好用,可实例化类还有存在的必要吗?

恰恰相反:
不要认为静态类可无所不包,
请慎用静态类,静态类只应用作面向对象的框架核心的支持类,
如果没有足够的面向对象设计能力,静态类是"惹不起"的.

  相关解决方案