instansiasi objek susan susan adalah instansiasi dari kelas manusia
susan = new manusia;
pemberian nilai pada atribut objek susannama = Susan;
pemanggilan method yang dimiliki oleh objek susanmenyapa; output: Susan bilang Halo
instansiasi objek lain dengan class yang sama joko = new manusia;
jokonama = Joko; jokomenyapa; output: Joko bilang Halo
?
2.2 Constructor
Seperti yang pernah dijelaskan sebelumnya, bahwa constructor adalah sebuah fungsi atau method yang secara otomatis dipanggil ketika sebuah class diinstansiasi menjadi sebuah
objek. Constructor tidak memiliki tipe data yang menjadi return value-nya secara eksplisit. Constructor tidak dapat diwarisi, walaupun pada banyak bahasa pemrograman yang
menerapkan konsep pemrograman berorientasi objek memiliki fitur yang digunakan untuk mengakses method constructor yang dimiliki oleh class
parent-nya. PHP memiliki fitur untuk melakukan hal tersebut.
Constructor banyak dimanfaatkan untuk melakukan hal yang selalu dilakukan ketika suatu kelas diinstansiasi. Pada contoh pada class manusia berikut ketika diinstansiasi menjadi
sebuah objek properti nama objek tersebut belum memiliki nilai, atau nilainya
NULL .
?php filename: manusia.class.php definisi class manusia
class manusia { public nama; variabel properti
public function menyapa { method echo thisnama . bilang Halo;
} }
?
Agar method menyapa tidak menampilkan properti yang kosong maka sebelum method menyapa dipanggil, nilai properti nama harus diisi dengan suatu nilai terlebih dahulu.
Dengan memanfaatkan method constructor, maka properti nama dapat langsung diisikan dengan memberikan suatu nilai pada saat class tersebut diinstansiasi. Contoh penerapan
method constructor pada class manusia diperlihatkan dalam kode PHP berikut:
?php filename: manusia.class.construct.php definisi class manusia
class manusia {
Halaman 102
public nama; atribut properti nama manusia method constructor untuk kelas manusia
public function __construct arg { thisnama = arg;
}
method menyapa pada kelas manusia public function menyapa {
echo thisnama . bilang Halo; }
}
?
Dapat diketahui bahwa pada method constructor kelas manusia menerima sebuah argumen untuk disimpan dalam atribut nama. Maka untuk menginstansiasi kelas manusia menjadi
sebuah objek, sekaligus memberikan nilai terhadap atribut nama yang diberikan melalui method constructor dengan cara:
?php filename: manusia.construct.php menyertakan class manusia pada kode PHP ini
include manusia.class.construct.php;
instansiasi dengan argumen untuk method constructor susan = new manusiaSusan;
susanmenyapa; output: Susan bilang Halo
joko = new manusiaJoko; jokomenyapa; output: Joko bilang Halo
?
Dengan method constructor, hal-hal yang sifatnya perlu dilakukan secara otomatis ketika sebuah kelas diinstansiasi menjadi objek dapat dimasukkan pada method constructor.
Sehingga pada contoh tersebut di atas, pemberian nilai terhadap properti nama dapat disingkat dengan dilakukan secara langsung melalui method constructor pada saat instansiasi
objek.
2.3 Inheritance