Поліморфізм

Автор: Laura McKinney
Дата Створення: 9 Квітень 2021
Дата Оновлення: 24 Червень 2024
Anonim
Ё*кий полиморфизм
Відеоролик: Ё*кий полиморфизм

Зміст

Визначення - Що означає поліморфізм?

Поліморфізм у C # - це здатність об'єктів різних типів надавати унікальний інтерфейс для різних реалізацій методів. Зазвичай він використовується у зв'язку із запізнілим зв'язуванням, коли поведінка об'єкта у відповідь на виклик членів його методу визначається на основі типу об'єкта під час виконання. Поліморфізм дозволяє переосмислити методи у похідних класах.

Поліморфізм утворює одне з основних понять об'єктно-орієнтованого програмування, поряд з інкапсуляцією та успадкуванням.


Вступ до Microsoft Azure та Microsoft Cloud | У цьому посібнику ви дізнаєтеся, що стосується хмарних обчислень та як Microsoft Azure може допомогти вам мігрувати та вести свій бізнес із хмари.

Техопедія пояснює поліморфізм

Метод перевантаження, перевантаження конструктора та перевантаження оператора вважаються поліморфізмом часу компіляції (також його називають статичним або спеціальним), або раннього зв’язування. Переосмислення методу, що включає спадкування та віртуальні функції, називається поліморфізмом або виконуваним пізнім зв'язуванням (також його називають динамічним, включенням або підтипом). У випадку поліморфізму часу компіляції ідентифікація перевантаженого методу, який слід виконати, проводиться під час компіляції. Однак у поліморфізмі часу виконання тип об'єкта, від якого буде викликано переосмислений метод, визначається під час виконання.

У C # поліморфізм реалізується шляхом успадкування та використання ключового слова "віртуальний". Отримані класи успадковують членів базового класу, крім конструкторів, на основі їх рівня доступності. Отже, компілятор генерує код для перевірки та ідентифікації правильного типу об'єкта (на який вказує еталонний тип) під час виконання та відповідного методу для виклику.

Прикладом поліморфізму є базовий клас працівника, який включає всі основні деталі про співробітників. Такі класи, як клерк та менеджер, можуть успадковувати базовий клас працівника за допомогою конкретних реалізацій (шляхом переосмислення віртуальних методів), де це необхідно у похідних класах.


Це визначення було написано в кон. C #