我了解到 static 方法用于创建类类型的实例。我看到一些使用静态方法的类必须为该类声明一个私有构造函数。
私有构造函数有什么用?我们还可以在不使用私有构造函数的情况下创建类的实例吗?感谢。
答案 0 :(得分:1)
基本上我们在Singleton Design Pattern中使用这种静态工厂方法。
Singleton意味着基于这种设计模式,我们只能为该类创建一个对象。
例如:
class Test{
private static Test mObject;
private Test()
{
}
public static Test getInstance(){
if(mObject==null){
mObject=new Test();
}
return mObject;
}
}
答案 1 :(得分:0)
私有构造函数有什么用?
如果一个类只有私有构造函数而没有公共构造函数,则其他类(嵌套类除外)不能创建此类的实例
我们仍然可以在不使用Private的情况下创建类的实例 构造
是使用反射(需要致电setAccessible的constructor)