Tutorial PHP OOP Bagian II

Masih Melanjutkan Permasalahan OOP di bahasa pemrograman PHP,
yakni disini akan membahas tentang apa itu Encapsulation
sebelumnya jika Anda belum mengerti konsep awal dari OOP,
seperti Class, Propertise, Function/Method, dan Objct, diharapkan anda harus Mempelajari ke Bab 1 dahulu,
dimana bab 1 adalah membahas tentang apa itu Class, propertise, Function/Method, dan Object,
silahkan baca Bab 1

Jika Anda sudah memahaminya..okee kita lanjutkan di BAB 2 ini,
dimana kita akan membahas apa itu Encapsulation,

BAB II
Encapsulation
Inilah salah satu kelebihn OOP, Terdapat Encapsulation,Apa si encapsulation itu,
Encapsulation berarti Pembungkusan, Namun Yang dimaksud dengan pembungkusan disini adalah suatu proses program agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain,
Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan program agar dapat diakses sewaktu-waktu, sekaligus menjaga program tersebut.
Enkapsulasi juga merupakan suatu cara untuk menyembunyikan informasi detail dari suatu class.

Bisa dicontohkan juga dalam kehidupan sehari-hari,
misalkan Dalam Mengendarai sebuah mobil, Namun Pengemudi hanya perlu mengetahui cara mengendarai seperti menginjak kopling, namun pengendara tanpa perlu tahu bagaimana mobil bisa berjalan berdasarkan pengInjakan koplingnya..
dan banyak lagi contoh-contohnya...

Latihan Encapsulasi 1.
<?php
class kendaraan{
//mensettng propertise menggunakan private
private $merk;
protected $harga;
private $jmlroda;

//membuat function kondisi mobil
function Kondisi(){
if ($this->harga>10000000){
return "Mahal";
} else {
return "Murah";
}
}
}
//membuat object agar program bisa ditampilkan
$objMobil = new Kendaraan();
//mensetting nilai propertise di dalam objec
$objMobil->merk=("Avanza");
$objMobil->harga=(15000000);
$objMobil->jmlroda=(4);

//perintah untuk menampilkan program yang telah disetting
echo 'Merek Mobil adalah '.$objMobil->merk.'<br>';
echo 'Harga Mobil = '.$objMobil->harga.'<br>';
echo 'Jumlah Rodanya = '.$objMobil->jmlroda.'<br>';

//menampilkan function kondisi yang telah dibuat tadi
echo 'Status Harga ='.$objMobil->Kondisi();
?>

Jika Program dijalankan pasti akan Menghasilkan Output Yang Eror
"Fatal error: Cannot access private property kendaraan::$merk in D:\xampp\htdocs\OOPJadirullah\latihan2.php on line 26"
Karena pada propertise pada class terdapat Private dan Juga Protected,
sehingga kita tidak bisa sembarangan memanggil propertise di dalam objectnya.

Private adalah kode yang sesuai dengan namanya, akses ini bersifat private. dengan kata lain data maupun method hanya dapat diakses oleh kelas yang dimilikinya saja.

Protected adalah kode akses yang membuat suatu data atau method yang didefinisikan dengan tingkatan akses ini dapat diakses oleh kelas yang memilikinya saja dan juga kelas-kelas yang memasih memiliki keturunan atau Encapsulation data.

Namun ada juga yang dinamakan dengan Public
Public adalah kode akses yang bersifat umum. dengan kata lain, data maupun method dalam suatu kodingan tersebut dapat diakses oleh semua bagian di dalam program.

Lalu Bagaimanakah caranya agar script dari kendaraan diatas bisa dijalankan,
Di OOP ada istilah yang dinamakan setter dan getter,
setter dan getter biasanya berada di dalam method / Fungsi,

setter dengan kata lain adalah mensetting,
dan getter adalah mengambil dari nilai yang telah kita setting ..
Berikut contohnya

Latihan Encapsulasi 2.
<?php
/*
* ENCAPSULATION
* melanjutkan pada latihan 1, diamana agar bisa menggunakan kondisi private pada propertise agar bisa
* ditampilkan di browser
*/
//buat class kendaraan
class kendaraan {
//membuat propertise dengan menggunakan kondisi private
private $merk;
protected $harga;
private $jmlroda;

//setter
//membuat fungtion untuk mensetting nilai propertise di dalam object nanti
function setMerk($merk){
$this->merk=$merk;
}
function setHarga($harga){
$this->harga=$harga;
}
function setJmlroda($jmlroda){
$this->jmlroda=$jmlroda;
}
//membuat function kondisi setatus harga
function statusharga(){
if ($this->harga >150000000){
return "Mahal";
} else {
return "Murah";
}
}
//Getter
//membuat function untuk mengambil nilai dari propertise yang telah disetting, dan akan di tampilkan pada browser
function getMerk(){
return $this->merk;
}
function getHarga(){
return $this->harga;
}
function getJmlroda(){
return $this->jmlroda;
}
}
//membuat objek
$objkendaraan = new kendaraan();
//mensetting nilai propertise dari function set yang telah dibuat di atas
$objkendaraan->setMerk("Avanza");
$objkendaraan->setHarga(160000000);
$objkendaraan->setJmlroda(4);

//perintah untuk menampilkan program yang telah disetting pada object, namun untuk mengambiil nilainya mengunakan
//function get tadi yang telah dibuat
echo 'Merk Mobil Adalah '.$objkendaraan->getMerk().'<br>';
echo 'Harga Mobil = '.$objkendaraan->getHarga().'<br>';
echo 'Jumlah Roda = '.$objkendaraan->getJmlroda().'<br>';

//menampilkan function kondisi yang telah dibuat tadi
echo 'Status Harga ='.$objkendaraan->statusharga();
?>

jika script tersebut dijalankan maka akan menghasilkan output

"Merk Mobil Adalah Avanza
Harga Mobil = 160000000
Jumlah Roda = 4
Status Harga =Mahal"

oke jika sudah paham lanjut ke bab 3 yaitu membahas tentang Inheritnace
BAB III, PHP OOP Inheritance

DAFTAR BAB
BAB I, PHP OOP Class,Propertis,Method,Object,COnstructor,Destructor
BAB III, PHP OOP Inheritance
BAB IV, PHP OOP Polymorphism
BAB V, Crud sederhana Dengan konsep OOP di PHP

Post a Comment