Різниця між перевантаженням і перекриттям

Перевантаження проти перекриття

Перевантаження та переосмислення - це особливості більшості мов програмування. Перевантаження - це особливість, яка дозволяє створювати кілька методів з однаковою назвою в одному класі, але відрізняються один від одного за типом вводу та типом виводу функції. Перевантаження методу зазвичай пов'язане зі статичними мовами програмування, які примушують перевірити тип у викликах функцій. Вони, швидше за все, пов'язані з VB, .Net, C ++, D, Java та ін. Переопределення - це основний навик, який використовується для об'єктно-орієнтованого програмування, і виконується, коли користувач переосмислює метод, який уже визначений у існуючому або батьківському класі. У цій методиці програмування сценарії кодуються для виконання конкретних завдань, дозволяючи сценарію, написаному нижчим або підкласом, реалізувати метод або набір інструкцій, які вже були викладені в будь-якому з батьківських або старших класів.

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

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

Підсумок:
Термін перевантаження зазвичай асоціюється зі статично запрограмованими мовами, а переважання отримало популярність в об'єктно-орієнтованому програмуванні.
Метод у класі, що має однакове ім'я методу з різною підписом, позначається як метод перевантаження. Переосмислення, відомий як метод у класі, що має однакове ім'я методу та однакові аргументи / підпис.
Перевантаження розділяє рівномірне співвідношення між методами, наявними в одному класі, тоді як при переопределенні створюється зв'язок між методом надкласу і методом підкласу.
Перевантаження дозволяє отримати спадщину від надкласу.
При переосмисленні метод підкласу займає місце надкласу.
Перевантаження повинно мати різні підписи методу, тоді як при переосмисленні має бути виділений один і той же підпис.