Получить экземпляр Singleton в другом конструкторе Singleton - PullRequest
0 голосов
/ 11 января 2019

Есть ли проблема для вызова экземпляра синглтона в конструкторе класса синглтона?

У меня есть синглтон A, и в конструкторе A я вызываю синглтон B.getInstance (). OtherMethod (). И когда я вызываю A.getInstance () в другом классе, это дает мне «ExceptionInInitializerError» вызвано «NullpointerException» с B.getInstance (). OtherMethod (). Так в чем может быть проблема?

Edit:

Singleton A

public class A{

   // SingletonHolder is a container class to hold singleton instance 
  private static final SingletonHolder<A> singletonA = new SingletonHodler<>(new A());

     private A(){

   // class B is also a singlton using SingletonHolder class
   Map map = B.getInstance().getMap();
  }
     public static A getInstance(){

  //.instance() is a method in SingletonHolder to return singleton instance
        return singletonA.instance();
    }
 }

Когда я вызываю A.getInstance () в тестовом классе. Я получаю исключение, упомянутое выше.

...