Sobes.tech
Junior — Middle

Milyen helyzetekben ajánlott az @Inject annotáció használata a konstruktorokhoz Dagger használata során?

sobes.tech MI

Válasz az MI-től

Javasolja az @Inject megjegyzés alkalmazását a Dagger konstruktorain, amikor azt szeretné, hogy a Dagger automatikusan létrehozza és biztosítsa ennek az osztálynak a példányait, kezelve annak függőségeit.

Az @Inject konstruktoron való használatának helyzetei:

  • Az osztály egy függőség, amelyet más komponensekbe kell injektálni.
  • A konstruktor nem igényel további paramétereket, amelyeket nem lehet a Dagger segítségével beszerezni.
  • Azt szeretné, hogy a Dagger automatikusan hozzon létre objektumokat anélkül, hogy kézi gyárakat vagy modulokat kellene írni.

Példa:

public class UserRepository {
    private final ApiService apiService;

    @Inject
    public UserRepository(ApiService apiService) {
        this.apiService = apiService;
    }
}

Itt a Dagger tudni fogja, hogyan hozzon létre UserRepository-t, automatikusan biztosítva az ApiService-t.