Hermetyzacja oznacza umieszczenie danych i metod działających na nich w jednej jednostce (klasie) oraz ukrycie stanu wewnętrznego za kontrolowanym publicznym interfejsem. Obiekty wywołujące metody współdziałają za pośrednictwem metod, a nie poprzez bezpośredni dostęp do pól.
Dlaczego to ważne
Jeśli ktokolwiek może bezpośrednio zmienić pole, nigdy nie możesz zagwarantować, że obiekt pozostaje ważny. Hermetyzacja pozwala klasie wymusić swoje własne niezmienniki.
{
balance;
{
(amount <= )
();
(amount > balance)
();
balance -= amount;
}
{ balance; }
}
