OOP - Incapsulamento dei dati

Dicembre 2016
L'incapsulamento è un meccanismo che consiste nel raccogliere i dati e i metodi all'interno di una struttura nascondendo l'implementazione dell'oggetto, cioè impedendo l'accesso ai dati con altri mezzi diversi dai servizi proposti. L'incapsulamento permette quindi di garantire l'integrità dei dati contenuti nell'oggetto.

Il mascheramento delle informazioni

L'utente di una classe non deve per forza conoscere in che modo sono strutturati i dati nell'oggetto, cioè non è tenuto a conoscere l'implementazione. Così, impedendo all'utente di modificare direttamente gli attributi, e obbligandolo ad usare le funzioni definite per modificarli (dette interfacce), si assicura l'integrità dei dati (si potrà ad esempio assicurare che il tipo di dati forniti sia conforme alle nostre attese, oppure che i dati si trovino effettivamente nell'intervallo atteso).

L'incapsulamento permette di definire dei livelli di visibilità degli elementi della classe. Questi livelli di visibilità definiscono i diritti di accesso ai dati a seconda che vi si acceda con un metodo della classe stessa, di una classe ereditaria, oppure di una classe qualsiasi. Esistono tre livelli di visibilità:

Pubblica, le funzioni di tutte le classi possono accedere ai dati o ai metodi di una classe definita con il livello di visibilità pubblica. Si tratta del più basso livello di protezione dei dati;

Protetta, l'accesso ai dati è riservato alle funzioni delle classi ereditarie, cioè dalle funzioni membri della classe invece che dalle classi derivate;

Privata: l'accesso ai dati è limitato ai metodi della classe stessa. Si tratta del livello più elevato di protezione.

Potrebbe anche interessarti :

OOP - Data encapsulation
OOP - Data encapsulation
POO - Encapsulación de datos
POO - Encapsulación de datos
OOP - Datenkapselung
OOP - Datenkapselung
POO - Encapsulation des données
POO - Encapsulation des données
POO - encapsulação dos dados
POO - encapsulação dos dados
Il documento intitolato « OOP - Incapsulamento dei dati » da CCM (it.ccm.net) è reso disponibile sotto i termini della licenza Creative Commons. È possibile copiare, modificare delle copie di questa pagina, nelle condizioni previste dalla licenza, finché questa nota appaia chiaramente.