У меня есть сомнения, связанные с внедрением зависимостей с помощью Google Guice.
У меня есть черта, в которой реализовано несколько методов
trait ATrait {
def someMethodA(parameters: ArgType) = {
//code
}
def someMethodB(parameters: ArgType) = {
//code
}
}
object A extends ATrait
Теперь у меня есть класс B, где мне нужны методыАтрэйт.Поэтому я ввел его.
class B @Inject(a: ATrait) {
//code
}
Я также дал привязку в классе модуля Guice.
class GuiceModule extends AbstractModule {
override def configure(): Unit = {
bind[ATrait].toInstance(A)
}
}
Теперь, когда я создаю объект класса B,
val b = new B()
Это не позволит мне сделать это, поэтому мой вопрос, должен ли я вручную пройти объект ATrait.Какая польза от Google Guice Injection?
Возможно, я сделал какую-то ошибку, потому что я учусь этому.Пожалуйста, наведите меня, если я что-то не правильно понял.
Заранее спасибо.