class Person
{
privatestring name;
publicstring Name
{
get { return name; }
}
publicPerson()//实例构造函数(无参构造函数)
{
this.name = "keeping moving";
}
publicPerson(string strname)//有参构造函数
{
this.name = strname;
}
}
class Program
{
staticvoid Main(string[] args)
{
Person person = new Person();//调用无参构造函数
Console.WriteLine(person.Name);
Person person2 = new Person("li ming");//调用有参构造函数。
Console.WriteLine(person2.Name);
Console.ReadKey();
}
}
}
私有构造函数最典型的应用是设计模式中的单例模式
class PersonS
{
privatestring name;
publicstatic PersonS person;
publicstring Name
{
get { return name; }
}
//私有构造函数,只能在类的内部调用。privatePersonS()
{
Console.WriteLine("调用了私有构造函数!");
this.name = "learning hard";
}
publicstatic PersonS GetInstance()
{
person = new PersonS();
return person;
}
}
class Program
{
staticvoid Main(string[] args)
{ //单例模式
PersonS p = PersonS.GetInstance();
Console.WriteLine(p.Name);
}
}