Разница между полиморфизмом и наследованием в ООП

Ключевая разница - полиморфизм против наследования в ООП
 

Объектно-ориентированное программирование (ООП) обычно используется для разработки программного обеспечения. Многие языки программирования поддерживают объектно-ориентированное программирование. Объектно-ориентированное программирование - это методология разработки программы с использованием классов и объектов. Класс в ООП - это план создания объекта. У класса есть свойства и методы. Объект является экземпляром класса. ООП содержит четыре столпа, такие как наследование, полиморфизм, абстракция и инкапсуляция. В этой статье обсуждается различие между полиморфизмом и наследованием в ООП. ключевое отличие между полиморфизмом и наследованием в ООП заключается в том, что Полиморфизм - это способность объекта вести себя по-разному, а наследование - это создание нового класса с использованием свойств и методов существующего класса..

СОДЕРЖАНИЕ

1. Обзор и основные отличия
2. Что такое полиморфизм в ООП?
3. Что такое наследование в ООП?
4. Сходства между полиморфизмом и наследованием в ООП
5. Сравнение бок о бок - полиморфизм против наследования в ООП в табличной форме
6. Резюме

Что такое полиморфизм в ООП??

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

перегрузка

См. Нижеприведенную программу, написанную на Java.

Рисунок 01: Перегрузка

В соответствии с вышеприведенной программой создается объект типа А. При вызове obj.sum (); это даст результат, связанный с методом sum (). При звонке в obj.sum (2,3); это даст результат, связанный с суммой (int a, int b). Можно наблюдать, что один и тот же объект ведет себя по-разному в зависимости от ситуации. Когда есть несколько методов с одним и тем же именем, но с разными параметрами, это называется перегрузка. Это также известно как статическая привязка или полиморфизм времени компиляции.

Переопределение

Еще один тип полиморфизма переопределение. См. Нижеприведенную программу, написанную на Java.

Рисунок 02: Переопределение

В соответствии с вышеприведенной программой, метод display () в классе A. Класс B расширяется от класса A. Следовательно, все методы в классе A доступны классу B. Это наследование. Концепция наследования описана ниже..

Класс B также имеет тот же метод display (). При создании объекта типа A и вызове метода отображения вывод будет давать B. Метод отображения класса A переопределяется методом отображения класса B. Итак, выход B.

Когда существуют методы с одинаковыми именами и одинаковыми параметрами, но в двух разных классах, и они связаны наследованием, это называется переопределением. Это также известно как Позднее связывание, динамическое связывание, полиморфизм во время выполнения. Перегрузка и переопределение называются полиморфизмом. Это основная концепция в объектно-ориентированном программировании.

Что такое наследование в ООП??

См. Нижеприведенную программу, написанную на Java.

Рисунок 03: Пример наследования

Согласно вышеприведенной программе, класс A имеет метод sum (), а класс B имеет метод sub ()..

Метод sum () класса A можно использовать в классе B с помощью ключевого слова extends. Повторное использование свойств и методов в существующем классе для создания нового класса называется Наследование. Даже нет метода sum () в классе B; оно наследуется от класса А. Наследование полезно для повторного использования кода. Старший класс называется базовый класс, суперкласс или родительский класс. Производный класс называется подкласс или детский класс.

Типы Наследования

Существуют различные виды наследования. Это одноуровневое наследование, многоуровневое наследование, множественное наследование, иерархическое наследование и гибридное наследование.

Единственное Наследование

В Single Inheritance есть один суперкласс и один подкласс. Если класс A является суперклассом, а класс B является подклассом, все свойства и методы класса A доступны классу B. Существует только один уровень; следовательно, это называется одноуровневым наследованием.

Многоуровневое наследование

В многоуровневом наследовании есть три уровня классов. Промежуточный класс наследуется от суперкласса. Подкласс наследует от промежуточного класса. Если есть три класса, такие как A, B и C, и A является суперклассом, а B является промежуточным классом. Тогда B наследует от A и C наследует от B, это многоуровневое наследование.

Множественное наследование

В множественном наследовании есть много суперклассов и один подкласс. Если есть три суперкласса, называемые A, B, C и D является подклассом, то класс D может наследоваться от A, B и C. Множественное наследование поддерживается в языке программирования C ++. Это не поддерживается в языках программирования, таких как Java или C #. Интерфейсы используются для реализации множественного наследования на этих языках.

Иерархическое наследование

Если существуют классы, называемые A как суперклассы, а B, C являются подклассами, эти подклассы могут наследовать свойства и методы класса A. Этот тип наследования известен как Иерархическое наследование..

Гибридное наследование

Существует еще один особый тип наследования, который называется гибридным наследованием. Это комбинация многоуровневого и множественного наследования. Если A, B, C и D являются классами, а B наследуется от A, а D наследуется как от B, так и от C, то это гибридное наследование..

Каковы сходства между полиморфизмом и наследованием в ООП?

  • Оба понятия объектно-ориентированного программирования.

В чем разница между полиморфизмом и наследованием в ООП?

Полиморфизм против наследования в ООП

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

Резюме - Полиморфизм против наследования в ООП 

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

Скачать PDF полиморфизм против наследования в ООП

Вы можете скачать PDF версию этой статьи и использовать ее в автономном режиме, как указано в примечании. Пожалуйста, загрузите PDF версию здесь Разница между полиморфизмом и наследованием в ООП

Ссылка:
  1. 8.3 Что такое наследование в Java | Лекция | Руководство, Telusko Learning, 15 мая 2014 года. Доступно здесь  
  2. Полиморфизм в Java Учебное пособие, Telusko Learning, 15 мая 2014 года. Доступно здесь