我怀疑静态类可以包含私有构造函数。
答案 0 :(得分:7)
静态类不能包含实例构造函数
http://msdn.microsoft.com/en-us/library/79b3xss3.aspx
以下列表提供了静态类的主要功能:
- 仅包含静态成员。
- 无法实例化。
- 密封。
- 不能包含实例构造函数。
答案 1 :(得分:6)
静态类不能包含任何实例构造函数(请参阅CS0710),无论是公共,私有,受保护还是内部。
有关详细信息,请参阅以下文章。
Static Classes and Static Class Members (C# Programming Guide)
答案 2 :(得分:5)
这个构造函数会做什么?该类是静态的,因此它永远不会被实例化。您可以在非静态类上使用静态构造函数来初始化静态字段,但在静态类中,唯一有意义的构造函数是静态构造函数,并且它被称为CLR。
添加:Jon Skeet posted an article关于静态类初始化的时间(通常在第一次使用时初始化,但有时你想在程序启动时初始化它)和一个< em>可能在.net 4中更改。
答案 3 :(得分:4)
你的疑问是正确的。
静态类只能有一个静态构造函数,而public / private不适用,因为你的代码永远不能调用这个构造函数(CLR会这样做)。
因此,您不能在静态构造函数上使用访问修饰符(public / private / ...)。
答案 4 :(得分:2)
规则是静态类,不能有实例构造函数