@ermoll07

Вывод данных со всех листов наследниках?

У меня есть супер класс в нем есть 2 наследника, в каждом наследнике есть List. Мне нужно объединить эти листы, при этом количество наследников с листами может добавляться по мере необходимости. И нужно через супер класс одним махом выводить содержание всех листов в наследниках. На выходе должен быть один лист в котором есть данные со всех листов. Как это можно реализовать? Где можно подкрепиться инфой?
  • Вопрос задан
  • 120 просмотров
Пригласить эксперта
Ответы на вопрос 2
qonand
@qonand
Software Engineer
И нужно через супер класс одним махом выводить содержание всех листов в наследниках

Это нарушает один из основных принципов наследования: наследники должны знать о своих родителях, родители о наследниках нет. По всей видимости Вы не совсем правильно спроектировали систему если возникают задачи подобного рода. Было бы проще Вам что-то порекомендовать, если бы Вы более подробно описали суть этой части системы
Ответ написан
@MaxLich
java developer
Пока приходит в голове такое: объявить лист в суперклассе, в наследниках его заполнять. В каком-то внешнем классе (который не входит в эту иерархию) создать список наследников суперкласса, и потом в цикле всех их перебирать и добавлять элементы из их списков в общий список.

ЗЫ Единственное тут возникает вопрос с типами элементов. Если для всех товаров используется один класс (то есть у них у всех одинаковые характеристики), то можно сразу список и типизировать этим классом. Иначе можно сделать суперкласс дженериком, и в каждом наследнике определять тип товара; правда, тогда все типы товаров должны иметь общего наследника (или общий интерфейс), т.д.. ...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы