C#开发过程中遇到这两个问题:
1、静态类适合什么时候使用?
2、频繁使用静态类会引发什么问题?
针对第一个问题:静态类适合什么时候使用?
MSDN对静态类如此定义:静态类是只对输入参数进行运算而不设置或获取任何内部字段的方法的集合。例如.NET Framework类库中,System.Math。
静态类有如下特点:
1、定义静态类时,该类的所有成员必须用静态修饰符修饰,即类中所有方法都是静态方法。
2、使用静态类时,不需要实例化就能直接引用该类的成员,对于只需要使用该类的方法时特别方便。
3、静态类不可以被继承。这个特点符合面向对象的原理,既然静态类不能实例化,也就没有“对象”的特点,当然不能被继承。
4、静态类具有共享性。
因此,需要定义一个类时,该类中所有的方法不需要改变、改写,并且会被频繁使用时,该类可以定义为静态类。
针对第二个问题:频繁使用静态类会引发什么问题?
静态类还有个特点:程序在启动时,静态类就被初始化了,程序结束时,才被销毁。
因此,当定义大量静态类时,该程序对内存占用非常大,大大影响运行速度。