静态工厂方法

时间:2014-12-14 00:14:40

标签: java static-methods

我了解到 static 方法用于创建类类型的实例。我看到一些使用静态方法的类必须为该类声明一个私有构造函数

私有构造函数有什么用?我们还可以在不使用私有构造函数的情况下创建类的实例吗?感谢。

2 个答案:

答案 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的情况下创建类的实例   构造

是使用反射(需要致电setAccessibleconstructor