Изучаю в Android RecyclerView, при ,казалось бы ,логическом
RecyclerView myRecycler = new RecyclerView(this);
myRecycler = findViewById(R.id.myrec);
Появляется предуприжденее
Variable 'myRecycler' initializer 'new RecyclerView(this)' is redundant
На работоспособность не влияет,но хотелось бы понять почему так.
Ранее вы создали для своей активити (фрагмента) xml-разметку, где указано, какие виджеты (классы View и его наследники, как RecyclerView, TextView и тп.) будут использоваться на экране, а так же их свойства (размер, цвет и тп.).
Метод setContentView() активити (или inflate() фрагмента) парсит (инфлейтит) xml-разметку и преобразует декларативный xml-язык разметки в дерево полноценных java-объектов виджетов с указанными свойствами.
метод findViewById() возвращает эти, уже созданные по описнию в разметке, java-объекты по идентификатору, назначеному в той же разметке, поэтому програмное создание этого объекта и не требуется, он уже создан ранее.
Это, естественно, относится ко всем виджетам, объявленым в разметке, а не только к RecyclerView
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости