

Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Differenze con esempi su Overloading e Overriding
Tipologia: Appunti
1 / 2
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!


Differenza tra override e overloading
L’ Overloading si definisce come la possibilità di dichiarare due funzioni distinte che abbiano lo stesso nome purchè la lista degli argomenti sia diversa. Overloading significa che possiamo dare lo stesso nome a più di una funzione purchè esse abbiano un diverso numero di parametri o almeno un parametro di tipo diverso. L’Overloading risulta molto utile nel caso di funzioni che hanno fini simili ma compiono operazioni diverse perché operano su argomenti di tipo diverso e al momento della chiamata il compilatore stabilisce quale funzione invocare in base all’argomento.
L’Overloading è orizzontale(ricordiamo c’è anche l’Overloading dei costruttori anch’essi considerati orizzontali).
Ecco un esempio in C++:
L’ Overriding è la ridefinizione in una sottoclasse di un metodo ereditato da una superclasse.
Overriding coincide con il concetto di CUT&PASTE.
Non esiste Override senza ereditarietà: infatti esistono delle regole ben precise da rispettare per la sua implementazione:
L’Overriding è verticale, sovrascrivo.
In codice come esempio di Overriding abbiamo:
di runtime per permettere all'interprete java di sapere quale metodo con etichetta leggi() far eseguire.