  |
Come estendere una classe Pesce |
Generalmente si parte da una classe di tipo generico, che ha delle caratteristiche generali per un determinato tipo di oggetti, e la si estende allo scopo di specializzarla.
Consideriamo una classe Pesce, che avrà delle caratteristiche generali, come la capacità di nuotare ad una certa velocità.
class Pesce {
int velocita = 10;
void setVelocita(int x) { velocita = x; }
void nuota() { ... }
}
  |
e specializzarla in un PesceRosso |
Se adesso decidiamo di specializzarla, per estende in un pesce rosso, dovremmo innanzitutto mantenere l'informazione sul colore, e per di più possiamo voler decidere di cambiare la tonalità di rosso (non tutti pesci rossi hanno lo stesso identico colore).
class PesceRosso extends Pesce {
int colore = Color.red;
void setTonalita() { ... }
}
  |
La classe PesceRosso |
  |
ha tutti i campi e i metodi di Pesce |
  |
in più un nuovo campo colore e un nuovo metodo
setTonaliita() |
La nuova classe ha ancora tutte le caratteristiche di quella preesistente, e ha in più la capacità di ricordarsi suo colore, e la possibilità di cambiare la tonalità di rosso.
|