Назад к вопросам
Junior — Middle
81
Каким образом можно реализовать хранение элементов разных типов в одном массиве с использованием механизмов полиморфизма?
Ответ от нейросети
sobes.tech AI
В Java для хранения элементов разных типов в одном массиве с использованием полиморфизма обычно создают массив базового класса или интерфейса, от которого наследуются все нужные типы. Благодаря полиморфизму можно обращаться к элементам массива через общий тип, а конкретное поведение определяется реализацией подклассов.
Пример:
// Базовый класс
abstract class Animal {
abstract void sound();
}
class Dog extends Animal {
void sound() { System.out.println("Гав"); }
}
class Cat extends Animal {
void sound() { System.out.println("Мяу"); }
}
public class Main {
public static void main(String[] args) {
Animal[] animals = new Animal[2];
animals[0] = new Dog();
animals[1] = new Cat();
for (Animal animal : animals) {
animal.sound(); // Вызов метода конкретного подкласса
}
}
}
Таким образом, массив типа Animal[] может хранить объекты разных подклассов, и при вызове методов будет использоваться соответствующая реализация.