Поліморфізм та перевантаження



Зверніть увагу на те, що операції присвоювання (=) та додавання (+) для типу даних Рosition повинні виконувати дії, що відрізняються від тих, які ці операції виконують для об’єктів стандартних типів. Чи, наприклад, вам необхідно використати операцію додавання (+) для додавання інтервалів чи об’єднання рядків. Як же оператори = та + розпізнають, які саме дії необхідно здійснити над операндами? Відповідь полягає в тому, що ми самі можемо задавати ці дії, зробивши потрібні оператори методами відповідного класу (наприклад, класу Рosition).

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

Коли існуюча операція, наприклад = чи +, наділяється можливістю здійснювати дії над операндами нового користувацького типу, говорять, що така операція є перевантаженою. Перевантаженими можуть бути будь-які унарні чи бінарні операції. Перевантаження являє собою частковий випадок поліморфізму і є важливим інструментом ООП.


Дата добавления: 2022-01-22; просмотров: 16; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!