Junior — Middle
95
Java-да полиморфизмнің қандай тәсілдері мен әдістері бар, және олар қалай жүзеге асырылады?
Сұралған компаниялар
СБЕР Бизнес
ТОП КЕЙС
AI-дан жауап
sobes.tech AI
В Java полиморфизм реализуется двумя основными способами:
- Полиморфизм времени выполнения (динамический полиморфизм) — достигается через переопределение методов (overriding). Когда у вас есть ссылка на базовый класс, но объект фактически принадлежит производному классу, вызывается версия метода производного класса.
class Animal {
void sound() {
System.out.println("Some sound");
}
}
class Dog extends Animal {
@Override
void sound() {
System.out.println("Bark");
}
}
Animal a = new Dog();
a.sound(); // Выведет "Bark"
- Полиморфизм времени компиляции (статический полиморфизм) — реализуется через перегрузку методов (overloading), когда в одном классе есть несколько методов с одинаковым именем, но разными параметрами.
class Calculator {
int add(int a, int b) {
return a + b;
}
double add(double a, double b) {
return a + b;
}
}
Таким образом, Java поддерживает полиморфизм через наследование и интерфейсы, позволяя объектам разных классов использовать один и тот же интерфейс с разной реализацией.