Постоји много разлика између преоптерећења метода и замене метода у Јави. Списак разлика између преоптерећења метода и замене метода је дат у наставку:
Не. | Преоптерећење метода | Метход Оверридинг |
---|---|---|
1) | Користи се преоптерећење метода да се повећа читљивост програма. | Користи се замена метода да обезбеди конкретну имплементацију метода који већ обезбеђује његова супер класа. |
2) | Изводи се преоптерећење методе унутар разреда . | Дешава се прегласавање метода у два разреда који имају ИС-А (наслеђивање) однос. |
3) | У случају преоптерећења методе, параметар мора бити другачији . | У случају замене метода, параметар мора бити исти . |
4) | Преоптерећење метода је пример полиморфизам времена компајлирања . | Надјачавање метода је пример полиморфизам времена рада . |
5) | У Јави, преоптерећење метода се не може извршити само променом типа враћања методе. Тип поврата може бити исти или различит у преоптерећењу метода. Али морате да промените параметар. | Тип повратка мора бити исти или коваријантан у надјачавању метода. |
Пример преоптерећења Јава методе
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;} }
Пример замене Јава методе
class Animal{ void eat(){System.out.println('eating...');} } class Dog extends Animal{ void eat(){System.out.println('eating bread...');} }