CityCat4, ну почему через 10. Если он, например, в 10 классе, то через пару-тройку лет уже имеет шансы попасть стажёром, а то и сотрудником.
У меня со школьной скамьи прошло около 7 лет, но я не рвался сразу)
Александр Синицын, не понял, зачем там абстрактный класс.
Нужен маркерный (без методов) интерфейс MyData, который реализуют различные дата-классы. В адаптер сеттится List. В зависимости от конкретного типа отдаётся нужный холдер. Удобно реализовать всё это позволяет библиотека AdapterDelegates от Дорфмана.
Дальше всё примерно как вы описали.
Dugayoyo, ArrayList из массива получается мгновенно - временем на создание объекта-обертки можно пренебречь, а массив внутри не копируется, а переиспользуется.
Сергей Горностаев, начинающему, который не умеет программировать вообще, лезть в узкую специализацию, и, тем более, в андроид, нельзя. Ничего хорошего из такого не получится.
Вы в курсе, что следующий андроид уже 9? И в курсе, сколько там ньюансов новых? 4-6 вообще ничего не покрывают в этом плане. Отставание по новым апи гораздо хуже, чем по старым.