Definizione di incapsulamento, ereditarietà e polimorfismo

Progettazione orientata agli oggetti in C++ con Kristoffer Hebert

Cosa sono l’incapsulamento, l’ereditarietà e il polimorfismo?

Incapsulamento
Una classe nella progettazione orientata agli oggetti è un contenitore per dati e metodi. Le classi utilizzano l’incapsulamento per gestire l’accesso agli attributi, come metodi e dati, contenuti in se stessi. Nel linguaggio C++, l’incapsulamento nelle classi è ottenuto con attributi come: pubblico, privato, protetto e statico. Gli attributi di classe pubblica sono accessibili ovunque. Gli attributi di classe privata sono accessibili solo ai metodi di classe al loro interno. Gli attributi protetti sono accessibili a se stesso e alle classi figlio di se stesso. Gli attributi statici sono disponibili solo per la classe Padre, ma non per l’oggetto costruito in classe.

Ereditarietà
L’ereditarietà nella progettazione orientata agli oggetti descrive la relazione tra le classi padre quando estendono le classi figlio. Extend significa che una classe sovrascrive gli attributi di, o eredita gli attributi, da un’altra classe. Nell’esempio di codice fornito è possibile vedere che la classe figlio eredita ogni attributo della classe genitore. La classe Figlio sovrascrive il valore FirstName nella chiamata del costruttore. Ecco come si ottengono i nomi, Tom Sawyer e Suzy Sawyer.

Esempio di codice di ereditarietà di classe

Polimorfismo
Il polimorfismo descrive la relazione tra una classe e molte nella progettazione orientata agli oggetti. Una classe padre può avere più classi figlio che ereditano e sovrascrivono le proprietà. La classe di trasporto ha due classi che la estendono, Aereo e barca a vela, sovrascrivendo gli attributi protetti e il metodo showDetails.

Le chiavi per ricordare le classi

sono contenitori con attributi, chiamati data e method. Le classi utilizzano l’incapsulamento per gestire l’accesso a questi attributi. In C++, gli attributi di classe possono essere gestiti tramite modificatori di attributi di classe privati, statici, pubblici e protetti. Le classi ereditano gli attributi delle Classi che estendono. Inoltre, le classi possono sovrascrivere gli attributi delle classi che estendono. Le classi genitore possono avere più classi figlio.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

More: