У меня вопрос о унаследованных классах и List
типах. Представьте, что вы создали класс с именем Polygon
с некоторыми методами (вычислять периметр, область и т. Д.) И класс Triangle
, который расширяет Polygon
. В то же время в вашем основном классе вы создали тип List
, который сохраняет объекты Polygon
. Все принадлежит к одной и той же упаковке.(Java) Типы списков и наследование
Я сомневаюсь, что это следующий: если я создам объект из типа Triangle
, могу ли я сохранить его в этом последнем List
?
Пример:
Класс Многоугольник
public class Polygon{
//All his methods
}
класса Треугольник
public class Triangle extends Polygon{
//All his methods
}
Главный класс
public static void main (String[] args){
List<Polygon> listPolygon = new ArrayList <Polygon>();
Triangle example = new Triangle();
listPolygon.add(example);
}
Большое спасибо и извините за мой возможный плохой английский. Сейчас я много тренируюсь.
У вас уже есть код, но вы спрашиваете нас * «могу я» *? Почему бы просто не попробовать? – Tom
@ Тому, мне жаль, Том, если это очевидно, но сейчас я просто учусь, и если это невозможно, я ожидал ответа «нет», после чего следовала статья, объясняющая мне, почему это невозможно, или ответ, предлагающий мне альтернативное решение. – xFunkyTImes
Это не имеет никакого отношения к «если это очевидно». У вас уже есть этот код, но вы его не пробовали? Ни разу? Если вы это сделаете, у вас будет ваш ответ. – Tom