appunti3s:generalizzazione
Differences
This shows you the differences between two versions of the page.
— | appunti3s:generalizzazione [2020/06/08 22:19] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Generalizzazione ====== | ||
+ | {{: | ||
+ | * è quasi la stessa cosa dell' | ||
+ | * ha il simbolo della linea continua che termina con un triangolo | ||
+ | * ha UN SOLO verso e quindi una sola regola (vedi esempio) | ||
+ | ===== 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 // | ||
+ | < | ||
+ | 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), | ||
+ | |||
+ | 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, | ||
+ |
appunti3s/generalizzazione.txt · Last modified: 2020/06/08 22:19 by 127.0.0.1