Я беспокоился о DI, используя Google Guice следующим образом
У меня есть класс B, и его дети классы B1, B2. Все классы используют конструктор по умолчанию.
Затем я создаю класс связывания:
public Binding extends AbstractModule{
bind(B1.class);
bind(B2.class);
}
И класс приложения, который я объявляю:
public Application{
@Inject
B1 b1;
@Inject
B2 b2;
}
Я могу напрямую использовать экземпляр b1 и b2 без вызова new B1 () или new B2 ().
Теперь я добавляю конструктор без параметра в класс B:
public B {
public B(){}
}
Тогда я больше не могу использовать экземпляр b1, b2, они нулевые.
Мои вопросы:
Что мне нужно отредактировать, чтобы продолжить b1, b2 без вызова «new» или вызова Injector?
Если 1 невозможно, каково правильное решение для создания экземпляра такого количества дочерних классов B1, B2 ..., B10?