补充:C#中类在没有显示写实例构造器,编译器会默认一个无参构造器,为的就是在外部调用构造器实例化类。
public class Person{
public Person(){} // 没写默认,当然也可以显示写
}
public class Program{
static void Main(){
Person p=new Person(); 所以此调用编译通过
}
}
当私有构造器,private Person(){} 私有成员的可访问性限制Person()只能在其内部调用,所以这s时在外部是无法实例化类。当然这种情况是没有在重载构造器的情况下,如果Person中重载了一个
public Person(int age){} 的构造器另说。
所以这里我的理解是在显示私有无参构造器并且在没有重载的情况下,在类的外部不能实例化这个类。
温馨提示:答案为网友推荐,仅供参考