Enkapsulasi Objek : Public, Protected dan Private Di PHP OOP

Enkapsulasi Objek : Public, Protected dan Private Di PHP OOP 
 
Yang pertama yang lo pikirin pasti apa itu enkapsulasi? enkapsulasi merupakan metoda untuk mengatur struktur class dengan cara menyembunyikan alur kerja dari class tersebut. struktur class yang di maksud yaitu property dan method. dengan menggunakan metod ekapsulasi kita dapat mengatur hak aksess dari class untuk membatasi aksess kepada property dan method.

  1. Hak aksess : Public
ketika sebuah method dan property di dibuat sebagai public maka seluruh kode program dapat mengaksessnya termasuk class turunan berikut ini contohnya : 

<?php
//buat class motor
class Motor{
//buat public property
public $type;
//buat public method
public function hidupkan_motor()
{
return "Hidupkan Motor";
}
}
//buat objek dari class motor(inisialisasi)
$motor_rokib = new Motor();
//set property
$motor_rokib->type ="sport";
//tampilkan property
echo $motor_rokib->type;
//tampilkan method
echo $motor_rokib->hidupkan_motor();
?>

2. Pengertian Hak akses: protected 

Pasti lo berpikir Apa itu protected? Protected merupakan hak aksess untuk method atau property yang dapat
dilakukan oleh class itu sendiri atau turunan dari class f dan  tidak bisa diaksess diluar class. Berikut ini contohnya : 

<?php

//buat class motor(meneruskan tutorial yang sebelumnya)

class Motor{

//buat protected property

protected $merek = “Honda”;

pubic function nama_merek()

{

return $this->merek;

}

protected function nama_motor()

{

return “Nama Motor ”;

}

public function nama_lain()

{

return$this->nama_lain();

}

}

//buat objek dari class motor (inisialisasi)

$merek_motor = new Motor();

//menampilkan method aksess  merek

echo $merek_motor->nama_motor();

echo $merek_motor->nama_lain();

?>
 
Masih sama dengan contoh yang gua udah kasih sebelumnya property $merek dideklarasikan sebagai protected sehingga jika diaksess dari luar class akan menghasilkan error . Oleh karna itu gua membuat sebuah public method yang berguna untuk menghasilkan hasil property $merek, yakni method merek_motor ().Selain dari class sendiri yang bisa mengaksess
method, turunan dari class juga bisa mengaksess. Contohnya sebagai berikut : 


<?php

//buat class handphone

class handphone{

//buat property dengan hak aksess protected

protected $jenis_kamera =”vga”;

}

//buat class kamera

class kamera extends handphone{

public function tampilkannama_kamera(){

return->jenis_kemera;

}

}

//buat objek dari class kamera

$new_kamera = new kamera ();

//jalankan method

echo $new_kamera->tampilkannama_kamera(); //maka akan menampilkan “VGA”

?>
 
Dari script diatas mencontohkan walapun $jenis_kamera dibuat sebagai protected
tatapi bisa diaksess oleh class kamera karena class kamera turunan dari class
handphone.

3. Pengertian Hak Aksess : Private Gua akan sedikit menjelaskan tentang pengertian private. Private merupakan konsep enkapsuasi yang terakhir. Private hanya bisa di aksess oleh class itu sendiri tidak dapat di aksess oleh class yang lain ataupun class turunan. Contohnya sebagai berikut: 

<?php
//buat class handphone
class handphone{
//buat property dengan hak aksess protected
private $jenis_kamera =”vga”;
public function tampilkannama_kamera()
{
return $this->jenis_kamera;
}
}
//buat class kamera
class kamera extends handphone{
public function tampilkannama_kamera(){
return->jenis_kemera;
}
}
//buat objek dari class kamera
$new_kamera = new kamera ();
$new_handphone= new handphone();
//jalankan method
echo $new_kamera->tampilkannama_kamera(); //maka akan menampilkan “VGA”
echo $new_handphone->jenis_kamera();
?> 
 
Sekian dulu Smoga artikel ini bermanfaat dan bisa menambah ilmu pengetahuan para pembaca. Wasalamualiku. 

0 Response to "Enkapsulasi Objek : Public, Protected dan Private Di PHP OOP"

Posting Komentar