如何创建依赖类的单例实例?

时间:2017-03-08 17:55:57

标签: java design-patterns singleton

我对模式和使用它们有点新鲜。

我想配置一个依赖类的对象(比如说A.)并在我的应用程序中使用它。我尝试在它上面制作一个单独的包装类,但是失败了。我试过像:

 public class B {
  public static A a = new A();
  public static A getInstance() {
      return a;
  }

  private B() {
    a.configure(); 
  }
 }

我认为调用B.getInstance()不会在此处配置对象。我想要的是配置A的实例一次并在任何地方使用它。

1 个答案:

答案 0 :(得分:1)

基本上你的单身人士班级是B吧?在你的示例代码中,你使用内部A的单例模式,这没有多大意义。

根据我的理解,你应该选择类似的东西:

public class B {
    private static B _instance;
    public static B getInstance() {
        if (_instance == null) {
            _instance = new B(new A());
        }
        return _instance;
    }

   private A _a;

   private B (A a) {
       _a = a;
       _a.configure();
   }
}