Kamis, 26 Juni 2014

Konsep OOP PHP Pengenalan Inheritance


Salam jumpa lagi dengan saya Mas Benpro.
Untuk menghadapi bulan Ramadhan ini saya ingin mengucapkan Mohon Maaf lahir dan bathin, semoga kita dapat menunaikan ibadah puasa dengan khusyuk dan pahala diterima Allah SWT. Amiin Ya Robbal Alamiin. 
Lama saya tidak posting konten yang fresh, baru kali ini saya bisa mengisi artikel itupun karena terpaksa ada tugas mata kuliah PBO (malah curhat) tentunya Ada yang kangen. (Bukan sama tulisannya tapi sama saya tentunya... Hehehe).
To the point aja (cek ileee oake bahasa inggris emang bisa... Kagak).

Saya sekarang akan membahas tentang Konsep OOP dalam PHP, tentunya kita sudah tahu tentang Konsep OOP (bagi yang belum tahu silahkan tanya mbah gugel aja ya...), itu terdiri dari :   
  1. Kelas Abstrak (Class Abstraksi)
  2. Enkapsulasi (enkapsulasi)
  3. Pewarisan (inheritance)
  4. Polimorfisme (polymorphism)
Kali ini kita batasi pembahasannya hanya tentang Inheritance.
Apa itu Inheritance?
Inheritance atau dalam bahasa kita dikenal dengan Pewarisan adalah cara untuk membuat class baru dengan menggunakan class lain yang telah/sudah dibuat.
  • Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
  • Penurunan sifat ini bisa dilakukan secara bertingkat tingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
  • Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
  • Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kode-kode itu.
Pada umumnya Class yang mewarisi atau diturunkan dari class lainnya disebut Subclass dari Class yang diwarisi.
Pada hubungan Inheritance, class turunan mewarisi class induk (parent class). Maka semua atribut dan method class dari class induk akan dibawa (kecuali yang bersifat private tentunya), secara langsung akan menjadi bagian dari class anak (child class). Dan biasanya class anak akan membuat fungsionalitas baru yang tidak dimiliki oleh class induk.
Keuntungan menggunakan inheritance adalah mengganti, merubah bahkan menambahkan fungsi baru yang belum dimiliki oleh class induk.
(Bingung..ya.???..Sama. Supaya kta tidak bingung mari kita lihat contohnya aja).
Untuk membuat Inheritance menggunakan syntax "extends" pada class tersebut.
<?php
/* parent class */
class Mobil {
    public $merk;  
    function setMerk($merk){
        $this->merk = $merk;
    }  
    function getMerk(){
        return $this->merk;
    }
}
?>

<?php
/* class turunan */
class Harga extends Mobil {
    public $harga;  
    function setHarga($harga){
        $this->harga = $harga;
    }  
    function getHarga(){
        return $this->harga;
    }
}
?>

<?php
/* mengeksekusi Object */
$product = new Harga;
$product->setMerk("Toyota");
$product->setHarga("Rp 150 juta");

echo "Merk  : ".$product->getMerk()."<br />";
echo "Harga : ".$product->getHarga();

?>

Jadinya :

Artinya :
$product = new Harga; => Kita memanggil dan memberi nama variable baru sebuah Object.
$product->setMerk("Toyota"); => Kita memberi nama merk pada class mobil method setMerk 
$product->setHarga("Rp 150 juta"); => Memberikan harga pada class Harga pada setHarga


Kesimpulan :
Dapat anda lihat, bahwa class
 harga tidak mempunyai function merk. Akan tetapi karena inheritance maka class Harga juga dapat menggunakan function Merk. Tidak itu saja, selain dapat menggunakan function dari induknya, class anak juga dapat membuat function sendiri.

<<-- Selamat Belajar Bro -->>

1 komentar: