Pengkapsulan PHP

A.Pengertian

Enkapsulasi (encapsulation) adalah sebuah metoda untuk mengatur struktur class dengancara 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 methodtertentu saja yang bisa diakses dari luar class. Enkapsulasi juga dikenal dengan istilah ‘information hiding’.
Dengan enkapsulasi, kita bisa memilih property dan method apa saja yang boleh diakses, dan mana yang tidak boleh diakses. Dengan menghalangi kode program lain untukmengubah property tertentu, class menjadi lebih terintegrasi, dan menghindari kesalahan ketika seseorang "mencoba" mengubahnya. Programmer yang merancang class bisamenyediakan property dan method khusus yang memang ditujukan untuk diakses dari luar.

B. Access Modifier

Untuk membatasi hak akses kepada property dan method di dalam sebuah class, ObjekOriented Programming menyediakan 3 kata kunci, yakni Public, Protected dan Private. Kata kunci ini diletakkan sebelum nama property atau sebelum nama method. 

1. Public


Ketika sebuah property atau method dinyatakan sebagai public, maka seluruh kodeprogram di luar class bisa mengaksesnya, termasuk class turunan. Berikut adalah contohpenulisan public propertydan public method dalam PHP

2. Protected

Jika sebuah property atau method dinyatakan sebagai protected, berarti property atau methodtersebut tidak bisa diakses dari luar class, namun bisa diaksesoleh class itu sendiri atau turunan class tersebut.
Apabilakita mencobamengakses protected property atau protected method dari luar class, akan menghasilkan error, seperti contoh berikut ini:


Dalam contoh diatas, pemanggilan property $pemilik dan method hidupkan_laptop() dariluar class akan menghasilkan error. Walaupun akses level protected tidak bisa diakses dariluar class, namun bisa diakses dari dalam class itu sendiri.

3. 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 classturunan. Akses level private sering digunakan untuk menyembunyikan property dan method agar tidak bisa diakses di luar class.
Sebagai contoh, berikut adalah hasil yang di dapat jika kitamengakses property dan method dengan level private:



Itu mungkin penjelasan tentang Pengkapsulan, semoga bermanfaat bagi kawan semua. Saya kira cukup sekian dan terimakasih.

Tidak ada komentar:

Posting Komentar