构造函数可以是private的吗?
可以,但是private的话可以在类的内部使用,如单例模式
public class Singlton
{
private static Singleton _Instance;
provate static readonly object syslocker = new object();
//私有化构造函数
private Sinalton()
{
}
public static Singlton GetInstance()
{
if(_Instance == null)
{
lock(syslocker)
{
if(_Instance == null)
{
_Instance = new Singlton();
}
}
}
return _Instance;
}
}
这种形式就必须使用private将构造函数私有化,然后通过GetInstance()方法获得实例。这样能保存生成的实例是单一的。不允许用户使用构造函数重新构造。
虽然可以对函数进行私有化,但必须有其他的静态方法,静态属性获得实例