Hermetizavimas reiškia duomenų ir metodų, kurie juos apdoroja, grupavimą į vieną vienetą (klasę) ir slėpti vidinę būseną už kontroliuojamos viešos sąsajos. Kviesiantieji sąveikauja per metodus, o ne tiesiogiai manipuliuoja laukus.
Kodėl slėpti būseną
Jei kas nors gali tiesiogiai pakeisti lauką, negalite garantuoti, kad objektas lieka galiojantis. Hermetizavimas leidžia klasei saugoti savo invariantus.
{
balance;
{
(amount <= )
();
(amount > balance)
();
balance -= amount;
}
{ balance; }
}
