Полиморфизм в Java

введение в графики в JavaScript Программирование и разработка

Полиморфизм — одна из четырех фундаментальных концепций объектно-ориентированного программирования, которая позволяет выполнять определенную задачу несколькими способами. Для этого в полиморфизме используется концепция перегрузки и переопределения методов.

Полиморфизм в основном используется, когда мы работаем с наследованием, когда у нас могут быть разные классы с общими функциями. Например, подкласс может наследовать атрибуты класса и функции-члены суперкласса, и в таких случаях полиморфизм позволяет выполнять одно и то же действие множеством способов.

Что такое полиморфизм

Само название рассказывает всю историю, т.е. поли означает множество, а морфизм/морф означает формы, поэтому полиморфизм означает несколько форм чего-либо. Давайте рассмотрим приведенные ниже примеры из реальной жизни, чтобы понять концепцию полиморфизма:

Человек: мужчина может вести себя как студент во время учебы, покупатель во время шоппинга, член семьи дома и т. д.

Формы: форма может быть кругом, треугольником, затмением и так далее.

Вода: она может иметь много форм, таких как жидкость (вода), твердое тело (лед), газ (пар).

Итак, из приведенных выше примеров мы можем сделать вывод, что все, что может иметь несколько вариантов поведения в разных условиях, называется полиморфизмом.

Полиморфизм в Java

Давайте свяжем приведенные выше примеры с Java, чтобы понять, как работает полиморфизм в Java, и для этого рассмотрим приведенный ниже пример:

Класс Generic будет объявлен как суперкласс, и другие классы могут расширять атрибуты и методы класса этого класса.

Здесь, в этом примере, Shapes — это общий класс, который не может быть ограничен только одной формой, такой как круг, треугольник и т. д. Таким образом, он будет иметь общую реализацию, которая может быть унаследована подклассами.

Кроме того, circle, треугольник и eclipse ( подклассы) могут расширять свойства суперкласса Shape.

Полиморфизм позволяет подклассам наследовать методы своего суперкласса и переопределять детали реализации.

Как использовать полиморфизм в Java

Для более глубокого понимания полиморфизма в Java рассмотрим приведенный ниже пример:

Пример

Приведенный ниже фрагмент кода создает три класса: один является родительским классом ( Bird ), а два других — дочерними классами ( Crow и Duck ):

classBird {

publicvoidBirdSound() {
System.out.println(«A bird sings Tee Tee Tee»);
}
}

classCrowextendsBird {

publicvoidBirdSound() {
System.out.println(«crow sound : caw caw caw»);
}
}

classDuckextendsBird {

publicvoidBirdSound() {
System.out.println(«Duck sound : Quack»);
}
}

publicclassPolymorphismExample {

publicstaticvoidmain(String[] args) {
Bird brd = new Bird();
Bird crw = new Crow();
Bird duk = new Duck();
brd.BirdSound();
crw.BirdSound();
duk.BirdSound();
}

}

Полный код с соответствующим выводом представлен на скриншоте ниже:

Полный код с соответствующим выводом

Результат подтверждает работу полиморфизма, т.е. одного метода с разными реализациями.

Заключение

Полиморфизм позволяет нам создавать несколько методов с одинаковыми именами, но разными реализациями. Он вступает в действие, когда у нас есть несколько связанных классов посредством наследования. Это означает, что полиморфизм позволяет подклассам наследовать методы своего суперкласса и переопределять детали реализации. Эта статья объясняет работу полиморфизма и дает лучшее понимание того, как использовать полиморфизм в Java.

Читайте также:  Как сделать подсветку синтаксиса HTML внутри строк PHP?
Оцените статью
bestprogrammer.ru
Добавить комментарий