为什么使用静态类?

neh*_*010 8 c# static static-classes

我对静态类和静态方法有疑问.从MSDN我理解"静态类和类成员用于创建可以在不创建类实例的情况下访问的数据和函数."

因此,如果我们不想将一个类与一个实例相关联,我们将把它作为静态.这是唯一的优势吗?任何人都可以指导我在静态类的实时场景.

类中的一些时间(不是静态的)我发现了静态方法.静态方法在实际中为实例提供了多少优势/性能优势.

Fin*_*las 19

对于实用类,它们很棒.如你所述,它们与全球状态相似.因此对于没有状态的类,为了性能优势,类应该是静态的.

另一方面,静态类很难测试(如果它们包含状态).多态性和其他OO概念也丢失了.

明智地使用.


Han*_*ant 6

static关键字应用于类是C#语言约定,它对CLR没有任何特殊意义.它只是确保所有成员都是静态的,并且您不会意外地使用new关键字创建该类的实例.

这个线程讨论了静态方法的优点.