В документации Guice глава о нецелевых привязках представляет следующий пример:
bind(AnotherConcreteClass.class).in(Singleton.class);
Что делает in()?Док не упоминает, для чего он.
in()
Я думаю, это всего лишь сфера.Он также принимает перечисление Scopes - Singleton или NO_SCOPE.
Область действия - это уровень видимости, который могут иметь экземпляры, предоставляемые Guice.По умолчанию экземпляр, созданный Injector, не имеет области видимости, то есть он не имеет состояния с точки зрения фреймворка - Injector создает его, внедряет его один раз в требуемый класс и сразу же забывает об этом.Связывание области с определенной привязкой позволяет «запомнить» созданный экземпляр и, возможно, снова использовать его для других инъекций.
http://google -guice.googlecode.com / svn / tags /3,0 / Javadoc / COM / Google / впрыснуть / Scopes.html # SINGLETON