logo

Різниця між перевантаженням методу та перевизначенням методу в java

Існує багато відмінностей між перевантаженням методів і перевизначенням методів у java. Нижче наведено список відмінностей між перевантаженням і перевизначенням методів:

Немає.Перевантаження методуПеревизначення методу
1)Використовується перевантаження методу для підвищення читабельності програми.Використовується перевизначення методу забезпечити конкретну реалізацію методу, який уже надається його суперкласом.
2)Виконується перевантаження методу в межах класу .Відбувається перевизначення методу у двох класах які мають зв’язок IS-A (успадкування).
3)У разі перевантаження методу, параметр повинен відрізнятися .У разі перевизначення методу, параметр повинен бути однаковим .
4)Прикладом є перевантаження методів поліморфізм часу компіляції .Перевизначення методу є прикладом поліморфізм часу виконання .
5)У java перевантаження методу не можна виконати, лише змінивши тип повернення методу. Тип повернення може бути однаковим або іншим у перевантаженні методу. Але вам доведеться змінити параметр. Повернений тип має бути однаковим або коваріантним у перевизначенні методу.

Приклад перевантаження методу Java

 class OverloadingExample{ static int add(int a,int b){return a+b;} static int add(int a,int b,int c){return a+b+c;} } 

Приклад перевизначення методу Java

 class Animal{ void eat(){System.out.println('eating...');} } class Dog extends Animal{ void eat(){System.out.println('eating bread...');} }