Enkapsulasi bermakna menggabungkan data dan kaedah yang beroperasi padanya di dalam satu unit (kelas) dan menyembunyikan keadaan dalaman di sebalik antara muka awam yang dikawal. Pemanggil berinteraksi melalui kaedah, bukan dengan mengubah medan secara langsung.
Mengapa menyembunyikan keadaan
Jika sesiapa boleh menukar medan secara langsung, anda tidak dapat menjamin objek tetap sah. Enkapsulasi membenarkan kelas menguatkuasakan invarian miliknya sendiri.
{
balance;
{
(amount <= )
();
(amount > balance)
();
balance -= amount;
}
{ balance; }
}
