Tutorial Belajar OOP PHP Part 8: Pengertian Constructor dan Destructor

Posted on

Melanjutkan panduan Belajar Object Oriented Programming (OOP) PHP, kali ini kita akan membahas mengenai Pengertian Constructor dan Destructor pada Pemrograman Objek, khususnya OOP PHP.


Pengertian Constructor pada OOP

Constructor (bahasa indonesia: konstruktor) yakni method khusus yang akan dijalankan secara otomatis di dikala sebuah objek dibangun (instansiasi), yakni ketika command “new” dijalankan.

Constructor lazimnya digunakan bagi merancang proses awal pada mempersiapkan objek, seperti memberi nilai awal kepada property, memanggil method internal dan beberapa proses lain yang digunakan bagi ‘mempersiapkan’ objek.

Pada PHP, constructor dibangun menggunakan method : __construct().


Pengertian Destructor pada OOP

Destructor (bahasa indonesia: destruktor) yakni method khusus yang dijalankan secara otomatis di dikala sebuah objek dihapus. Di pada PHP, seluruh objek secara otomatis dihapus ketika halaman PHP dimana objek itu berada selesai diproses. Tetapi kita pun dapat menghapus objek secara manual.

Destructor biasanya digunakan bagi ‘membersihkan’ beberapa variabel, atau menjalankan proses tertentu sebelum objek dihapus.

Pada PHP, destructor dibangun menggunakan method : __destruct().

PHP mempunyai fitur ‘penghapusan objek massal‘ yang dikenal dengan Garbage Collection. Fitur garbage collection akan menghapus seluruh objek secara otomatis ketika halaman PHP selesai di eksekusi, sehingga akan memanggil method __destructor dari seluruh objek.

Namun PHP menyediakan cara bila kita ingin menghapus objek sebelum mekanisme ini berjalan, yaitu menggunakan manfaat unset() atau mengisi variabel objek dengan nilai null. Kita akan melihat contoh penggunaannya dengan contoh program dibawah.


Cara Pemakaian Destructor dan Constructor pada PHP

Selaku panduan kita kali ini, berikut yakni contoh pemakaian constructor dan destructor pada PHP:

Pada contoh diatas, saya merancang class laptop dengan 3 method:

  • Method __construct() adalah constructor dari class laptop. Method ini akan dipanggil secara otomatis ketika class laptop di instansiasi.
  • Method hidupkan_laptop() adalah method ‘lazimnya’ yang akan menampilkan hasil string. Bagi menggunakan method ini, kita memanggilnya dari objek.
  • Method ketiga yakni __destruct() yang adalah destructor dari class laptop. Method ini akan dipanggil dikala objek dihapus.

Setelah pendefinisian class, saya merancang objek $laptop_andi, dan memanggil method hidupkan_laptop(). Berikut yakni hasil yang didapat:

Seperti yang terlihat, method __construct() dan __destruct() secara otomatis dipanggil dikala objek dibangun dan dikala objek dihapus. Bagi mencoba menghapus objek $laptop_andi secara manual, kita dapat menggunakan manfaat unset() selaku berikut:

Seandainya kita menjalankan kode diatas, berikut yakni hasil yang didapat:

Setelah memanggil method $laptop_andi->hidupkan_laptop(), saya kemudian menghapus objek $laptop_andi secara manual menggunakan manfaat unset($laptop_andi).

Bagi membuktikan bahwa destructor $laptop_andi telah dijalankan, saya menambahkan command echo “Objek Telah Dihancurkan” diakhir halaman. Sehingga kita dapat melihat bahwa destructor objek $laptop andi di jalankan sebelum dihapus otomatis oleh PHP. Silahkan kamu coba hapus command unset($laptop_andi), karenanya string “Objek Telah Dihancurkan” akan tampil sebelum destructor objek $laptop_andi.

Sahabat pun dapat mengganti command unset($laptop_andi) dengan $laptop_andi=null. Kedua command ini akan menghapus objek $laptop_andi dan men-trigger pemanggilan destructor.

Selaku contoh terakhir pada panduan kali ini, saya akan merancang contoh constructor yang sering digunakan bagi merancang objek dengan nilai awal. Konsep in
i sering digunakan pada pemrograman objek. Berikut yakni contoh penggunaannya:

Di kode diatas, saya menggunakan constructor selaku pembuat nilai awal dari objek. Method constructor menerima 2 buah argumen yang kemudian disimpan kedalam property internal objek.

Berikut yakni hasil yang didapat dari kode program diatas:

Di pada PHP, constructor dan destructor mesti mempunyai hak akses public. Seandainya kamu mengubah hak akses constructor atau destructor menjadi protected atau private, PHP akan mengeluarkan error:


Pada panduan kali ini, kita telah membahas mengenai pengertian constructor dan destructor dalam Pemrograman objek PHP. Kemudian kita pun telah melihat contoh perancangan class dan objek menggunakan constructor dan destructor. Pada panduan belajar OOP PHP berikutnya, kita akan membahas konsep urgen lainnya di pada OOP, yakni penurunan/pewarisan (inheritance) dalam Pemrograman objek.


Sumber https://www.duniailkom.com/