principio di sostituzione di Liskov
Utilizzare una classe figlia al posto di una classe padre non cambia il comportamento del programma
Come è facile violare l'LSP
classe Documento
string getTitolo()
void setTitolo(string titolo)
string getTesto()
void setTesto(string testo)classe Storage
void salvaSuDisco(doc)
testo = doc.getTitolo() + " " + doc.getTesto()
scriviIlFile(rimuoviGliSpazi(doc.getTitolo()) + ".txt", testo)vaclasse SMS che deriva da Documento
// oltre ai metodi della classe Documento, che sono automaticamente inclusi in SMS
string getDestinatario()
void setDestinatario(string numero_di_telefono)La soluzione
Astrarre
Rinunciare all'ereditarietà
Creare un nuovo livello

Implementare le differenze nella classe base
Conclusioni
Last updated