Guice: różnice między Singleton.class a @Singleton
W Guice, jaka jest różnica między:
// Inside your AbstractModule subclass:
@Override
public void configure() {
bind(Service.class).to(ServiceImpl.class).in(Singleton.class);
}
I:
@Override
public void configure() {
bind(Service.class).to(ServiceImpl.class);
}
@Provides @Singleton
public ServiceImpl providesService() {
return new ServiceImpl();
}
Czy oba są takie same? Kiedy używałbyś jednego kontra drugiego? Z góry dziękuję.