OOP - Data Enkapsulasi

Agustus 2017

Konsep Enkapsulasi

Enkapsulasi adalah cara mengorganisasi data dan metode ke dalam suatu struktur. Di saat yang sama, enkapsulasi mencegah akses ke data tersebut dengan cara apapun, selain dengan metode yang telah ditentukan. Dengan begitu, konsep enkapsulasi menjamin integritas data yang terdapat dalam suatu objek.

Menyembunyikan Data

Pengguna dengan kelas tertentu tidak perlu tahu bagaimana struktur data dalam sebuah objek. Hal ini berarti bahwa pengguna tidak perlu mengetahui bagaimana proses implementasi berlangsung. Dengan mencegah pengguna dari memodifikasi secara langsung, pengguna sebaliknya diharuskan untuk menggunakan fungsi yang telah didefinisikan untuk memodifikasi (interface) lebih dulu. Sehingga integritas data dapat dipastikan. Misalnya, seseorang dapat memastikan apakah jenis data yang diberikan sesuai dengan harapan. Atau apakah data tersebut sesuai dengan interval waktu yang telah ditetapkan.

Konsep enkapsulasi mendefinisikan akses di setiap tingkat dan unsur-unsur dari setiap class. Tingkatan akses tersebut mendefinisikan hak akses ke data. Juga memungkinkan pengguna untuk mengakses data, dengan metode yang ditetapkan oleh kelas tertentu itu sendiri, dari sebuah inheritance class, atau bahkan dari kelas lain. Ada tiga tingkatan akses:

  • Publik: fungsi dari semua kelas dapat mengakses data atau metode kelas yang didefinisikan dengan tingkat akses publik. Kelas ini memiliki tingkat perindungan terendah.
  • Dilindungi: akses data ini dibatasi untuk beberapa inheritance kelas, biasanya hanya untuk anggota dari kelas itu sendiri dan bagi anggota kelas.
  • Pribadi: akses data ditentukan dibatasi oleh metode yang digunakan dan berasal dari kelas tertentu saja. Kelas ini memiliki tingkat perlindungan data tertinggi.

Lihat Juga


Update terbaru pada 31 Oktober 2016 pukul 18:02, oleh Kholid Rafsanjani.
Dokumen ini berjudul "OOP - Data Enkapsulasi", dipublikasikan oleh pihak CCM di bawah lisensi Creative Commons. Anda dapat menyalin, menggunakan, dan memodifikasi konten halaman ini berdasarkan syarat dan ketentuan yang telah ditetapkan oleh lisensi ini. Mohon tetap mencantumkan nama CCM (id.ccm.net) pada publikasi Anda.