PHP Object Oriented Programming : Class Extends

PHP Class Extends, sebelumnya kita sudah membahas tentang membuat class, method, construct, destruct, visibility dan property. Sekarang kita akan bahas mengenai Class Extends. Apa itu Class Extends ? Class Extends adalah salah cara untuk menggunakan fitur inheritance dari Object Oriented Programming yang ada di PHP. Dimana teknisnya adalah kita menggabungkan Class PHP dengan Class PHP yang baru, yang nanti akan menjadi Parent Class ( class lama ), Child Class (class baru) dimana class Child inilah yang akan menjadi pewaris sifat (property dan method) dari Parent Class.

contoh

output
ONPHPID Tutorial

 

Tanpa harus membuat method baru di Class Child kita sudah bisa menggunakan method-method yang ada atau dimiliki oleh Class Parent sehingga kita tinggal menggunakan melanjutkan.

Note: Perlu diingat method atau properties yang boleh atau bisa diakses oleh Child hanya method atau properties dengan visibility public dan protected saja.

Kapan kita menggunakan PHP Class Extends ?

ketika kita ingin mengubah Core atau sistem inti tapi tidak ingin mengubahnya langsung pada filenya. karena kita diberi kebebasan untuk melakukan Overriding. sehingga code dari core tidak berubah sedikitpun, tapi hasilnya berubah, mari kita lihat penjelasan berikut ini.

PHP Class Overriding

Maksud dari Overriding di sini adalah untuk menimpa method atau properties agar fungsinya dapat diubah.

contoh

output
BelajarOOP ONPHPID

 

dengan cara itu di class ONPHPID kita tidak mengubah isi method the_name(), dibawah hasil method the_name() pun berubah, sesuai class yang di instance.

Lalu apakah tidak bisa kita buat method yang sama tapi method parent tetap digunakan.

Tentu bisa.. dengan keyword parent dan scope resolution (::) kita bisa mengakses parent method yang di inginkan.

contoh

 

output
ONPHPID
BelajarOOP ONPHPID

Membuat method __construct pada Class Child

Saat kita menggunakan class extends kita tidak boleh sembarangan menuliskan method bisa-bisa method tersebut akan menimpa method sebelumnya dan hasilnyapun berubah. Apalagi method __construct, kalo sampe ke override bisa hilang fungsi extends, tapi ada cara khusus agar kita tetap menggunakan bisa membuat __construct dan tidak menimpa __construct parent. Yak menggunakan keyword parent dan scope resolution (::).

contoh :

output
ONPHPID
Child ONPHPID

 

Baik Saya rasa cukup sekian untuk PHP Class Extends, nantikan artikel berikutnya. artikel berikutnya akan membahas Abstract, Interface dan implemement

Tutorial Menarik Lainnya

Adblocker Detected : Dukung ONPHPID dengan menonaktifkan Adblock-mu (^_^) Terima Kasih.