ePrometeusCorsoJavaJava
testi articoli
Testi Articoli  Download
Home | Basi | Espressioni | Comandi | Classi | Ereditarieta | Eccezioni | Thread | Utilita | 
CorsoJava è ora Video! Free for all!
Clicca Qui!

Classi
OOP
Ereditarietà
Polimorfismo
Chiamata
Classi
Record
Istanze
Costruttori
Campi
this
Allocazione
Più costruttori
this()
Inizializzazioni
Riferimenti
Ordine
Metodi
Invocazione
Overloading
Attenzione
Finalizzazione
Static e Final
Campi statici
Blocco static
Metodi statici
Visibilità
Costanti
Package
import
import *
Classpath
L'interprete
Zip e Jar

<<< Polimorfismo >>>
Ridefinizione di metodi

La capacità di ridefinire metodi, è alla base della polimorfismo. Vediamo nel seguente esempio come stiamo sostituendo al metodo nuota() esistente uno metodo, che ha lo stesso nome di quello della classe base.

class PesceRosso 
 extends Pesce {
 void nuota() { ... }
}

In tal caso avviene un meccanismo speciale detto polimorfismo. Prima di entrare dettagli, cerchiamo di capire concettualmente che vuol dire che è un oggetto e polimorfo. Non bisogna andare molto lontano con gli esempi: considerando una automobile, questa ha dei comportamenti diversi a seconda del modello. In particolare per accenderla (nel nostro linguaggio invocando il metodo accendi() della classe Auto), il comportamento effettivo del motore per fare questa operazione è diverso a seconda che si tratta di una Ferrari monoposto di formula uno, o una utilitaria per andare alla spesa. In ogni caso, entrambe si accendono, si mettono in moto. In pratica ad una richiesta che è abbastanza "standard" (accendere la macchina), la specifica automobile sa in se come comportarsi. Polimorfismo significa che gli oggetti cambiano il loro comportamento pur mantenendo la stessa forma.

ePrometeus s.r.l. - Web Software House & Open Source System Integrator
MILANO - SAN BENEDETTO DEL TRONTO(AP)
Contatti: info@eprometeus.com