169 похожих чатов

Всем привет. Читаю документацию по Dagger и вижу следующее предложение: If

your class has @Inject-annotated fields but no @Inject-annotated constructor, Dagger will inject those fields if requested, but will not create new instances.
Что значит "будет внедрять те поля, но не будет создавать новые экземпляры"? Разве, чтобы инициализировать их, не надо создать новые экземпляры?

11 ответов

22 просмотра

дай ссылку на этот док

Albert-Abdullin Автор вопроса

https://dagger.dev/dev-guide/

да, хороший вопрос, самому интересно

суть в том, что если просто поставить Inject в классе - то создадутся фабрики, но инжекнутся они только когда будет вызван модуль, а если инжектить через конструктор - то вызов модуля будет в самом даггере

Albert-Abdullin Автор вопроса

это я понимаю. Просто там было написано странно. Спасибо за отклик

but will not create new instances относится не к моменту инжекции, а к моменту объявления

Albert-Abdullin Автор вопроса

Точно. Спасибо большое за разъяснения

а когда происходит момент объявления?

имею ввиду, когда просто создается объект, например new Fragment()

эо называется инициализация

да, имел это ввиду

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта