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

Ключова різниця : перевантаження означає два методи одного і того ж класу з однаковими іменами та різними типами параметрів, тоді як перевизначення означає два різні методи в одному класі з однаковими типами параметрів, але з різними реалізаціями.

Методи перевизначення та перевантаження - це два поняття або методи, які використовуються в мовах програмування Java. Обидві концепції дозволяють програмісту надавати різні реалізації для методів під одним іменем. У цій статті розрізняють дві концепції програмування.

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

У перевантаженні реалізація методу має однакову назву, оскільки виконує подібні завдання. Крім того, перевантаження вважається поліморфним за своєю природою. Функції, що мають різні реалізації, залежать від вказаних типів аргументів. Зазвичай це пов'язано зі статичними мовами програмування, що забезпечує перевірку типу у викликах функцій. Він також вважається практичним, оскільки дозволяє програмісту писати декілька різних методів в одному класі. Однак при перевантаженні процесорного процесу процесор змінює назву всіх перевантажених методів, що може бути проблемою.

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

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

Порівняння між перевантаженням і перевизначенням:

Перевантаження

Перевизначення

Визначення

Це означає наявність методів одного класу під одним і тим же ім'ям, але кожен метод має різні параметри або має ті ж параметри з різними типами і порядком.

Це означає наявність підкласу з тими ж методами під однаковою назвою і точно таким же типом параметрів і тим же типом повернення, що і суперклас.

Значення

Це означає, що більше одного методу мають однакову назву в одному класі, але мають іншу підпис.

Це означає, що метод базового класу повторно визначається у похідному класі з однаковим підписом.

Поведінка

Він додає або поширюється на поведінку методів.

Вона змінює існуючу поведінку методу.

Поліморфізм

Це поліморфізм часу компіляції.

Це поліморфізм часу виконання.

Статичний метод

Статичний метод може бути перевантажений.

Неможливо перевизначити статичний метод.

Бонд

Статична зв'язок.

Динамічна зв'язок.

Успадкування

Він може або не може вимагати спадкування.

Вона завжди вимагає успадкування.

Асоціація

Він зазвичай асоціюється зі статичними мовами програми.

Зазвичай це пов'язано з об'єктно-орієнтованими програмами.

Підпис

Методи мають різну підпис.

Методи повинні мати однакову підпис.

Швидкість

Це швидше, ніж перевизначення.

Це повільно в порівнянні з перевантаженням.

Класи

Для перевантаження не потрібно більше одного класу.

Для перевантаження потрібні щонайменше два класи.

Рівень

Методи можуть мати будь-який рівень доступу.

Методи мають однаковий або широкий рівень доступу.

Приклад

Клас Add

{

int sum (int a, int b)

{

return a + b;

}

int sum (int a)

{

повернути a + 10;

}

}

Клас А // Супер клас

{

недійсний дисплей (int num)

{

print num;

}

}

// Клас B успадковує клас A

Клас B // Підклас

{

недійсний дисплей (int num)

{

print num;

}

}

Рекомендуємо

Схожі Статті

  • різниця між: Різниця між Android 4.1 і Android 4.2

    Різниця між Android 4.1 і Android 4.2

    Ключова різниця: Android - це операційна система на базі Linux, що належить і управляється Альянсом Open Handset Alliance, консорціумом 84 провідних фірм, частково Google. Android 4.1, також отримав прізвисько Jelly Bean, був випущений на конференції Google I / O 27 червня 2012 року. Він заснований на ядрі Linux 3.0.31. Він був наступником Android 4.0 (Ice Cream Sandwich) і пропонує значні оновлення операційної системи Android. Android 4.2
  • різниця між: Різниця між активами та зобов'язаннями в банківській сфері

    Різниця між активами та зобов'язаннями в банківській сфері

    Ключова різниця: Актив - це все, що можна використовувати, щоб заробити більше грошей. Відповідальність - це зобов'язання, на яке мають бути сплачені гроші. З точки зору банківської діяльності, актив - це все, на що можна отримати відсотки, тоді як зобов'язання - це все, на що потрібно платити відсотки. Банківська справа, інвестиції, борг, бухгалтерський облік тощо - це незрозумілі слова і навіть більш заплутані поняття. Саме тому, не дивно, що багато людей мають проблеми з наступними концепціями. Не кажучи вже про те, що існують супереч
  • різниця між: Різниця між грубим і курсом

    Різниця між грубим і курсом

    Ключова різниця : Термін "груба" зазвичай відноситься до текстури, зокрема до жорсткої або грубої текстури. Груба текстура зазвичай походить від того, що річ складається з великих грубих зерен або частинок. В той час, як термін «курс» може стосуватися маршруту або напрямку подорожі, або може посилатися на маршрут або напрямок подорожі, тобто навчальний курс. Слова, грубий
  • різниця між: Різниця між коричневим цукром і мелясою

    Різниця між коричневим цукром і мелясою

    Основна відмінність: Цукор є узагальненою назвою для харчових речовин із солодким смаком. Сахароза, столова цукор, переважно видобувається з цукрового очерету або цукрового буряка. Цукор, доступний у багатьох формах на ринку. Патока є побічним продуктом процесу виробництва цукру; будь то волокна цукрового очерету, буряк або виногр
  • різниця між: Різниця між PTRC і PTEC Реєстрація для професійних податків в Індії

    Різниця між PTRC і PTEC Реєстрація для професійних податків в Індії

    Ключові відмінності: PTRC означає професійний сертифікат податкового реєстрації, а PTEC - професійний сертифікат про зарахування податків. Бізнес зазвичай вимагає обох для ведення бізнесу. Процес реєстрації для PTRC і PTEC зазвичай однаковий, але процеси відрізняються в залежності від стану. PTRC і PTEC є двома сертифікатами відмінності,
  • різниця між: Різниця між Asus PadFone Infinity і Galaxy Note II

    Різниця між Asus PadFone Infinity і Galaxy Note II

    Ключова різниця: смартфон Asus Padfone Infinity - це пляма 5-дюймового Full HD 1920x1080, Super IPS + з ємнісною сенсорною панеллю і забезпечує щільність приблизно 441 ppi. Пристрій - барний телефон, з вигнутими кутами, що надають йому аналогічний вигляд "iPhone" і "HTC One". Asus Padfone Infinity Dock - це в основному 10-дюймовий планшетний корпус, що дозволяє користувачам закріпити свій телефон в планшеті, зсунувши його в пляму н
  • різниця між: Різниця між довірою і вірою

    Різниця між довірою і вірою

    Ключова різниця: Довіра і віра мають більш глибокі значення, коли мова йде про її використання у відносинах. Довіра фактично означатиме, що людина ставить повну впевненість і впевненість в іншій людині. Віра частіше вважається духовним поняттям. Вона розглядається як вірність, обов'язок або лояльність до однієї людини або буття. Довіра і віра є подібними поняттям
  • різниця між: Різниця між маслом каноли та маслом виноградного насіння

    Різниця між маслом каноли та маслом виноградного насіння

    Ключова різниця: За назвою, масло каноли отримують з ріпаку або ріпаку; і виноградне насіння видобувається з виноградних кісточок, які є побічними продуктами виноробства. Масла, які були витягнуті з відповідних джерел, таких як насіння, називаються насіннями насіння. Є кілька сортів насіння олії, доступних на р
  • різниця між: Різниця між печією та кислим рефлюксом

    Різниця між печією та кислим рефлюксом

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

Вибір Редакції

Різниця між стаціонарними та канцелярськими товарами

Ключова відмінність: Слово «Стаціонарне» означає «стоїть на місці» або в основному просто не рухається. Канцелярські товари, з іншого боку, стосуються письмових матеріалів, конвертів, офісних матеріалів тощо. Терміни Стаціонарні та Канцелярські часто змішуються разом, насамперед тому, що терміни виглядають і звучать так схожі; вони виключені лише однією літерою. Проте, два означаю