Table of Contents

Generalizzazione

Principio di sostituzione

Un oggetto della classe derivata implementa sia il modello della classe base che della classe derivata.

Come si realizza?

Si definisce la classe A come classe derivata dalla classe B , che è la classe base

Class B
{
  //etc.
};

class A : public B
{
  //etc.
};

In questo modo la classe A avrà, oltre ai propri membri, anche quelli ereditati da B.

Rispetto alla relazione di Aggregazione (o di Associazione), in questo caso, A può accedere ai membri dello stesso tipo di B senza aver bisogno di creare un oggetto di tipo B perché è lui stesso un oggetto di tipo B.

Questo può essere utile quando …?

Esempio

La relazione si riconosce quando nelle regole si può leggere: Ogni oggetto-derivato è un (is a) oggetto-base (non viceversa). Ogni automobile è un autoveicolo, Ogni camion è un autoveicolo, ecc…