in () в привязке Guice () ... что это делает? - PullRequest
0 голосов
/ 20 декабря 2011

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

bind(AnotherConcreteClass.class).in(Singleton.class);

Что делает in()?Док не упоминает, для чего он.

1 Ответ

1 голос
/ 20 декабря 2011

Я думаю, это всего лишь сфера.Он также принимает перечисление Scopes - Singleton или NO_SCOPE.

Область действия - это уровень видимости, который могут иметь экземпляры, предоставляемые Guice.По умолчанию экземпляр, созданный Injector, не имеет области видимости, то есть он не имеет состояния с точки зрения фреймворка - Injector создает его, внедряет его один раз в требуемый класс и сразу же забывает об этом.Связывание области с определенной привязкой позволяет «запомнить» созданный экземпляр и, возможно, снова использовать его для других инъекций.

http://google -guice.googlecode.com / svn / tags /3,0 / Javadoc / COM / Google / впрыснуть / Scopes.html # SINGLETON

...