Я новичок в программировании на Java и хотел бы понять, как здесь правильно работать с полиморфными ссылками.
Предположим, у нас есть следующий (абстрактный) код в C ++:
List<Fruit*> lstFruit;
...
// collect apples here
while (...)
{
Fruit* apple = new Apple("green");
lstFruits.append(apple);
}
...
lstFruit[i]->doSomething(); // here is our virtual method
Java не позволяет мне создавать коллекцию List
со ссылками на базовый класс abstract
.Что мне делать в этой ситуации?Моя цель - работать с различными объектами дочерних классов повсеместно, независимо от того, каков их класс на самом деле.