1
如果我有這樣一個模塊:做Guice提供者方法是否符合範圍?
public class MyModule extends AbstractModule {
@Override
public void configure() {
bind(WhatsThis.class).to(AnAppleOfGold.class);
bind(TellMeYourName.class).to(Bosse.class);
}
@Provides
public AnAppleOfGold providesApple() {
return new AppleOfGold(providesFizz());
}
@Provides
public Bosse providesBosse() {
return new Bosse("Grab a hold of my beard", providesFizz());
}
@Provides @Singleton
public Fizz providesFizz() {
return new Fizz(Math.random());
}
}
每次吉斯使用providesApple
和providesBosse
分別注入AnAppleOfGold
和Bosse
對象,他們究竟是怎麼菲斯同單實例?換句話說,Guice的榮譽範圍是否在之間提供了方法,還是僅僅從模塊的「外部」(DI客戶端代碼)承諾範圍(在本例中爲Scopes.SINGLETON
)?提前致謝。
Ahaaaa ...非常有趣。感謝您提供非常有用的答案! – IAmYourFaja 2013-02-11 16:37:23