2 minutes
Catatan Belajar OOP PHP (Bag. 2)
Inheritance
Bahasa Indonesianya adalah pewarisan.
Menciptakan hirarki antar kelas (Parent & Child).
Child class mewarisi property dan method Parent-nya.
Child class memperluas / mengembangkan fungsionalitas Parent-nya.
// Parent
class OrangTua {
// Memiliki property dan method
}
// Child
class AnakPertama Extends OrangTua {
// Mewarisi semua property dan method dari OrangTua
// Boleh memiliki property dan method baru khusus untuk AnakPertama
}
class AnakKedua Extends OrangTua {
// Mewarisi semua property dan method dari OrangTua
// Boleh memiliki property dan method baru khusus untuk AnakKedua
}
// AnakPertama dan AnakKedua tidak saling mewarisi, masing-masing aja itu mah
PHP akan mendahulukan property dan method dari Child sebelum mencari di Parent. Jadi, jika ada nama property dan method yang sama di Child dan Parent, maka akan dieksekusi yang Child-nya.
Misal:
class OrangTua {
public function __construct() {
echo "Aku OrangTua!";
}
}
class AnakPertama extends OrangTua {
}
$anak = new AnakPertama();
// pada browser akan dicetak "Aku OrangTua!"
Tapi jika class AnakPertama
juga memiliki construct:
class OrangTua {
public function __construct() {
echo "Aku OrangTua!";
}
}
class AnakPertama extends OrangTua {
public function __construct() {
echo "Aku AnakPertama!";
}
}
$anak = new AnakPertama();
// pada browser akan dicetak "Aku AnakPertama!"
Tidak hanya berlaku untuk construct
, tapi berlaku juga untuk property dan method yang lain.
Overriding
Bahasa Indonesia-nya mah ambil alih.
Gunakan keyword parent::
sebelum nama methodnya.
Jadi, ketika Parent dan Child memiliki nama method yang sama dan kita ingin menggunakan method dari Parent, maka gunakanlah teknik overriding ini.
Web Programming UNPAS
OOP DASAR pada PHP #6 - InheritanCe (Bagian 1)
OOP DASAR pada PHP #7 - Inheritance (Bagian 2)
OOP DASAR pada PHP #8 - Overriding
Kalau kamu suka tulisan saya, boleh kok traktir saya kopi. Tinggal klik di sini.