Pengertian Enkapsulasi Objek (Public, Protected dan Private) (Pengenalan & Praktikum)

Daftar Isi
  1. Bagaimana Enkapsulasi secara Umum
  2. Bagaimana Hak Akses: Public tersebut
  3. Bagaimana Hak Akses: Protected
  4. Bagaimana Hak Akses: Private
  5. Download Materi PPT
  6. Referensi


Bagaimana Enkapsulasi secara Umum

 

Bagaimana Enkapsulasi secara Umum ?

 

 

Enkapsulasi (encapsulation) adalah sebuah metoda untuk mengatur struktur class dengan cara menyembunyikan alur kerja dari class tersebut.


Struktur class yang dimaksud adalah property dan method. Dengan enkapsulasi, kita bisa membuat pembatasan akses kepada property dan method, sehingga hanya property dan method tertentu saja yang bisa diakses dari luar class. Enkapsulasi juga dikenal dengan istilah ‘information hiding’.


Bagaimana Hak Akses: Public tersebut

Bagaimana Hak Akses: Public tersebut?

Ketika sebuah property atau method dinyatakan sebagai public, maka seluruh kode program di luar class bisa mengaksesnya, termasuk class turunan.

 

Berikut adalah contoh penulisan public property dan public method dalam PHP:


Bagaimana Hak Akses: Protected

Bagaimana Hak Akses: Protected ?

Jika sebuah property atau method dinyatakan sebagai protected, berarti property atau method tersebut tidak bisa diakses dari luar class, namun bisa diakses oleh class itu sendiri atau turunan class tersebut.

 

Apabila kita mencoba mengakses protected property atau protected method dari luar class, akan menghasilkan error, seperti contoh berikut ini:

Dalam contoh diatas, pemanggilan property $kategori dan method user_checkout() dari luar class akan menghasilkan error.


Walaupun akses level protected tidak bisa diakses dari luar class, namun bisa diakses dari dalam class itu sendiri, berikut adalah contohnya:

property $kategori di deklarasikan sebagai protected, sehingga pengaksesan dari luar class akan menghasilkan error. Oleh karena itu, saya membuat sebuah public method yang akan menampilkan hasil property $kategori, yakni method akses_pemilik().

Begitu juga dengan method user_checkout() yang tidak bisa diakses secara langsung. Saya menambahkan method paksa_user_checkout() yang secara internal akan mengakses method user_checkout().


Pada kode di atas, walaupun method $kategori di set sebagai protected pada class ecommerce_protected_3, tetapi masih bisa diakses dari class ecommerce_protected_4 yang merupakan turunan dari class ecommerce_protected_3.


Bagaimana Hak Akses: Private

Bagaimana Hak Akses: Private?

Hak akses terakhir dalam konsep enkapsulasi adalah private. Jika sebuah property atau method di-set sebagai private, maka satu-satunya yang bisa mengakses adalah class itu sendiri. Class lain tidak bisa mengaksesnya, termasuk class turunan.

 

Sebagai contoh, berikut adalah hasil yang di dapat jika kita mengakses property dan method dengan level private:


Download Materi PPT

Materi - Pengertian Enkapsulasi Objek (Public, Protected & Private)


Referensi

-