Різниця між перевантаженням і перевизначенням в 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;

}

}

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

Схожі Статті

  • різниця між: Різниця між віскі та віскі

    Різниця між віскі та віскі

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

    Різниця між Mm і Cm

    Різниця ключів: Mm дорівнює однієї тисячної метри, а cm дорівнює сотій метри. Це обидва одиниці вимірювання. Міліметрів і сантиметрів є загальними словами, які чути при спробі щось виміряти. Вони є одиницею вимірювання в міжнародній метричній системі. Міліметр (мм) і сантиметр (см) є одиницею довжини і пов'язані з базовим блоком Міжнаро
  • різниця між: Різниця між Node.js і Angular.js

    Різниця між Node.js і Angular.js

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

    Різниця між сценарієм і сценарієм

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

    Різниця між заголовком і заголовком

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

    Різниця між відрахуванням податку на прибуток, знижкою та наданням допомоги

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

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

    Ключова різниця: Щипці для завивки - це тип заліза, який може створювати хвилі і кучеріння волосся, використовуючи різні методи і вироби у волоссі. Щипці для завивки мають циліндричну форму і мають металеву бочку з пластиковою ручкою. Випрямлення заліза - це тип заліза, який використовується для випрямлення волосся. Також відомі випрямлячі та праски. Ці праски використовуються для видалення природних кучерів і хвиль з воло
  • різниця між: Різниця між зубами і зубами

    Різниця між зубами і зубами

    Ключова різниця: Зуб - це невелика білувата структура, яка зустрічається в роті людини. "Зуби" - це множинне слово для зуба. Воно потрапляє в категорію нерегулярних множин. Зуби використовуються для кусання і жування їжі. Зуб відноситься до невеликої білуватої структури, яка зустрічається в гирлі безхребетни
  • різниця між: Різниця між XOLO X1000 і Samsung Galaxy Grand

    Різниця між XOLO X1000 і Samsung Galaxy Grand

    Ключова відмінність: XOLO випустила XOLO X1000, смартфон на базі Intel. XOLO x1000 працює на одноядерному процесорі Intel Atom Z2480. Він має швидкість обробки 2 ГГц завдяки своїм можливостям гіперпотоків, а також 1 Гб оперативної пам'яті. Samsung Galaxy Grand - це смартфон середньої дальності, запущений корпорацією Samsung. У телефоні є 5-дюймовий сенсорний екран з дисплеєм 480 х 800 піксе

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

Різниця між туманністю і галактикою

Ключова різниця: Туманність - це хмара у глибокому просторі, що складається з газу або бруду / пилу (наприклад, хмара, що утворилася після вибуху зірки). Групу численних зірок, пилу, планет та інших міжзоряних речовин, зв'язаних гравітаційною силою, називають Галактикою. Туманність - це хмара в глибокому космосі, що складається з газу або бруду / пилу. Слово туманність походить від латинського слова, що означає «хмара». Туманність називається також туманностями. Хмари пилу та газу наз