Junior — Middle
Dagger'da aynı modülde aynı türde nesne döndüren iki yöntem uygulayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Dagger'da, aynı modülde ek bir nitelik olmadan aynı türde iki yöntemi basitçe ilan etmek mümkün değildir, çünkü bu bağımlılık çözümlemesi sırasında bir çatışmaya yol açar. Böyle bir durumu uygulamak için, bu bağımlılıkları ayırt etmek amacıyla @Qualifier veya @Named anotasyonları kullanılmalıdır. Örneğin:
@Module
public class MyModule {
@Provides
@Named("typeA")
MyObject provideMyObjectA() {
return new MyObject("A");
}
@Provides
@Named("typeB")
MyObject provideMyObjectB() {
return new MyObject("B");
}
}
Böylece, enjeksiyon sırasında istenen varyant @Named("typeA") veya @Named("typeB") kullanılarak belirtilebilir.