OOP in PHP(2)

Inheritance

Inheritance merupakan suatu konsep di OOP dimana kita dapat menurunkan suatu method di sebuah class kepada class anaknya, sehingga kedua class tersebut dapat mempunyai method yang sama tanpa mendeklarasikan ulang method tersebut di kelas anaknya ( kelas yang diturunkan ).

Contoh :

<?

class induk {
var $induk = “induk”;
function induk () { // ini merupakan konstruktor
$this->induk;
}
}
class anak extends induk{
function anak () {
print $this->induk;
}
}
$anak = new anak ();
?>

Hasil dari output : induk.

Penjelasan :
Pada class induk, divariabelkan kata “induk”. Lalu kata induk tersebut diwariskan pada class anak. Sehingga pada saat kita mencetak class anak, dapat dipanggil variabel induk tadi dari class induk.

Overriding

Terkadang dalam membuat program, kita bingung memberikan nama variabel.Pada pemrograman prosedural, kita tidak dapat menggunakan variabel yang sama berulang-ulang. Tetapi pada Konsep OOP, kita dapat menggunakan variabel yang sama secara berulang-ulang tetapi operasi yang dilakukan oleh metode tersebut berbeda. Inilah yang dinamakan Overriding.

Untuk lebih jelasnya, mari kita lihat contoh sederhana dari konsep overriding di bawah ini :

<?

class induk {
var $kata = “Cetak induk”;
function kata () {
print $this->kata;
}
}
class anak extends induk {
var $kata = “Cetak Anak”;
function kata () {
print $this->kata;
}
}
$cetak = new anak ();
$cetak->kata();

?>

Hasil dari output : cetak anak.

Mengapa yang tertampil di layar adalah kata “cetak anak” padahal seharusnya pewarisan kelas induk mengharuskan “cetak induk” ? Karena pada class anak terjadi overriding pada method kata. Sehingga pada saat dijalankan, yang tertampil di layar bukanlah cetak induk tetapi cetak anak

Category: Uncategorized
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
One Response
  1. teguh says:

    testt

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>