8. Preklapanje imena funkcije
U realnom radu, veoma često će se doći u situaciju da imamo više istoimenih funkcija.
Ono što razlikuje jednu metodu od druge metode je njen potpis (signature). Potpis jedne metode je određen njenim imenom i listom argumenata. Dve metode imaju različite potpise ako nemaju identične liste parametara iako imaju isto ime.
Na primer, recimo da nam je potrebno sabiranje. Znamo da će nam biti potrebno da izvršimo sabiranje dva, tri ili četiri sabirka, i trebaju nam sve te mogućnosti. Logično bi bilo da se sve metode zovu isto jer upravo i rade isto.
Prema tome, naše rešenje bi bilo preklapane metoda prema sledećem:
public class MatematickeOperacije
{
public int sabiranje(intprviBroj, intdrugiBroj)
{
int zbir = prviBroj+ drugiBroj;
return zbir;
}
public int sabiranje(int prviBroj, int drugiBroj, int treciBroj)
{
int zbir = prviBroj + drugiBroj + treciBroj;
return zbir;
}
public int sabiranje(int prviBroj, int drugiBroj, int treciBroj, int cetvrtiBroj)
{
int zbir= prviBroj + drugiBroj + treciBroj + cetvrtiBroj;
}
Ovo ste mogli da vidite na vežbama - koristili smo preklapanje konstruktora, tako što smo kreirali jedan konstruktor bez parametara i jedan konstruktor koji je imao sve moguće parametre. Imena konstruktora su ista, a poziva se onaj koji ima odgovarajući broj parametara.