Riuso del codice

Composizione:

Ereditarietà: è uno dei meccanismi fondamentali della programmazione ad oggetti

Inizializzazione dei componenti

Occorre fare attenzione ad inizializzare oggetti componenti di una classe:

Ereditarietà

La relazione di ereditarietà equivale alla relazione di inclusione tra gli insiemi

Dire che una classe $B$ eredita un’altra $A$ equivale a dire che $B$ ha sicuramente tutti gli attributi ed i metodi di $A$

Ereditando $A$ possiamo estendere la sua definizione completando $B$

Indicazioni d’uso

Si usa la composizione quando una classe deve fornire la funzionalità realizzate in altre classi già esistenti

Si usa l’ereditarietà quando la nuova classe deve presentare un’estensione dell’interfaccia della vecchia classe

Ereditarietà

Esiste però anche un altro motivo, di ordine pratico, per cui conviene usare l’ereditarietà, oltre quello di descrivere un sistema secondo un modello gerarchico; questo secondo motivo è legato esclusivamente al concetto di riuso del software

In alcuni casi si ha a disposizione una classe che non corrisponde esattamente alle proprie esigenze; anzichè scartare del tutto il codice e riscriverlo, si può seguire con l’ereditarietà un approccio diverso, costruendo una nuova classe che eredita il comportamento di quella esistente, salvo che per i cambiamenti che si ritiene necessario apportare