Нецелевые привязки в Guice - PullRequest
4 голосов
/ 17 марта 2011

В документации Guice есть пример нецелевого связывания как:

bind(MyConcreteClass.class)
   .annotatedWith(Names.named("foo"))
   .to(MyConcreteClass.class);

Может ли кто-нибудь объяснить простым языком, что именно это делает и почему вы хотите это сделать?

1 Ответ

5 голосов
/ 17 марта 2011

Создается привязка типа MyConcreteClass с аннотацией @Named("foo") с использованием класса реализации MyConcreteClass. Вы бы сделали это, если хотите ввести этот тип:

@Inject public Bar(@Named("foo") MyConcreteClass object) { ... }
...