Junior — Middle
В кои ситуации се препоръчва използването на анотацията @Inject за конструктори при използване на Dagger?
sobes.tech AI
Отговор от AI
Препоръчва се да прилагате анотацията @Inject към конструкторите в Dagger, когато искате Dagger автоматично да създава и предоставя екземпляри на този клас, управлявайки зависимостите му.
Ситуации за използване на @Inject върху конструктора:
- Класът е зависимост, която трябва да бъде инжектирана в други компоненти.
- Конструкторът не изисква допълнителни параметри, които не могат да бъдат получени чрез Dagger.
- Искате Dagger автоматично да създава обекти без да е необходимо да пишете фабрики или модули ръчно.
Пример:
public class UserRepository {
private final ApiService apiService;
@Inject
public UserRepository(ApiService apiService) {
this.apiService = apiService;
}
}
Тук Dagger ще знае как да създаде UserRepository, автоматично предоставяйки ApiService.