私有构造函数是一种特殊的实例构造函数。 它通常用在只包含静态成员的类中。
如果类具有一个或多个私有构造函数而没有公共构造函数,则其他类(除嵌套类外)无法创建该类的实例。
如果类T只声明了私有实例构造函数,则在T的程序文本外部,既不能从T派生,也不可能直接创建T的实例。
常见的应用是工具类和单例模式。
using System;
public class A
{
private A()
{
Console.WriteLine("AAAAA");
}
public static string GetMsgA()
{
return "Hello AAAAA !!!";
}
}
class Program
{
static void Main(string[] args)
{
//A a1 = new A();
string str = A.GetMsgA();
Console.WriteLine(str);
Console.ReadKey();
}
}
先不注释 A a1 = new A(); 构建则出错如下;
注释了之后构建运行如下;