Posted by Materi Teknik Informatika • Informasi Teknologi Informasi • Digital Marketing on 10/03/2015
Override dilakukan ketika suatu Class dilakukan Inheritance, yang berbeda hanya nilai atributnya saja.
Implementasi sederhana dari Override dalam PHP OOP.
<html>
<head>
<title>Override - PHP OOP</title>
</head>
<body>
<p>
<?php
class Mobil {
public function bunyi() {
return "BRUMM BRUMM!";
}
}
class Sepeda extends Mobil {
public function bunyi() { // Implementasi Override
return "Beeb Beeb!";
}
}
$kendaraan1 = new Sepeda();
echo $kendaraan1->bunyi();
?>
</p>
</body>
</html>
Pada source code di atas function yang di definisikan ulang pada Class Sepeda extends Mobil output yang dihasilkan adalah "Beeb Beeb!".
Implementasi lain dari Override bisa kita lihat pada source code berikut.
Menghitung nilai mahasiswa menggunakan OOP Override dalam PHP.
<title>Override Nilai - PHP OOP</title>
<?php
function getMhs($mhs) {
return $mhs;
}
class Fasilkom_A
{
public $mahasiswa = 90;
function nilai(){
$mhs = getMhs($this); // Cara curang untuk mengakali $this dengan mengganti namanya, namun tetap saja sama isinya $this.
if ($mhs->mahasiswa == 100) $status = 'Jenius';
else if ($mhs->mahasiswa >50 ) $status = 'Pintar';
else $status = 'Belajar lagi!!!';
return $status;
}
}
class Fasilkom_B extends Fasilkom_A
{
public $mahasiswa = 40;
}
class Fasilkom_C extends Fasilkom_A
{
public $mahasiswa = 100;
}
$A = new Fasilkom_A(); // Variable $this telah menjadi ketentuan dalam PHP dan tidak bisa ditetapkan nilai baru.
echo $A->nilai(); // Variable $this hanya bisa ditetapkan di dalam Class yang melakukan eksekusi pada Function yang memiliki Class.
$B = new Fasilkom_B();
echo $B->nilai();
$C = new Fasilkom_C();
echo $C->nilai();
?>
Kira-kira outputnya seperti apa? silahkan coba sendiri.