【发布时间】:2013-10-18 07:38:15
【问题描述】:
根据 MSDN
"一个类可以声明为静态的,表示它只包含 静态成员。无法创建静态实例 类使用 new 关键字。静态类会自动加载 由 .NET Framework 公共语言运行时 (CLR) 当程序 或包含该类的命名空间已加载。"
经过一番研究,我发现静态类不包含实例构造函数。我不明白为什么静态类不包含实例构造函数以及 static 关键字的用途。为什么 .Net 不允许我们创建静态类的实例?
【问题讨论】:
-
静态类的定义是你不能实例化它。你想知道为什么存在静态类吗?或者阻止它们实例化的机制是如何工作的?类上的
static只是一个标志,上面写着“你不能实例化它”。 -
我使用静态类来实现链式编程,就像使用 jQuery 一样。
MyStaticClass.StaticMethod1.StaticProperty1 -
@CodesInChaos 你错过了更重要的一点。它不能是基类,换句话说,它是密封并且必须从System.object派生
-
@SriramSakthivel 在 CLR 级别,它只是一个
abstract sealed类。