Halo teman-teman pada tutorial kali ini saya akan membahas tentang Cara Penggunaan Fungsi Final dan Abstract pada OOP, Fungsi Final dan Abstract pada OOPÂ yaitu untuk membuat sebuah kerangka kerja yang lebih rapi dan terstruktur, nah yang pertama kita akan bahas terlebih dahulu yaitu fungsi dari Final.
Dalam membuat sebuah class, kita sering menurunkan sebuah class kepada class lain, atau yang biasa kita kenal dengan inheritance/pewarisan. Di dalam pemrograman object kita juga diperbolehkan untuk menimpa method milik parent class dan method milik child class, dan proses tersebut disebut sebagai overridden method. overridden method ini dapat dilakukan dengan cara membuat sebuah nama method yang sama dengan mana method yang ada di dalam parent class.
Nah jika kita menggunakan fungsi Final, tidak dibolehkan atau melarang sebuah class untuk dapat diturunkan, dan jika kita memberikan sebuah keyword final pada sebuah class maka class tersebut akan terjadi error, untuk contoh scriptnya teman-teman bisa simpan script dibawah ini dengan nama final.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <?php // parent finalclassMobil{ public$merk='mini bus'; protected$harga=150000000000; private$nama='Avanza'; } // child classHargaextendsMobil{ publicfunctioncetak_harga(){ //akses property return$this->harga; } publicfunctioncetak_nama(){ return$this->nama; } } classSedanextendsMobil{} classBusextendsMobil{} // object $tampil=newHarga; echo $tampil->merk; echo'<br>'; echo$tampil->cetak_harga(); echo'<hr>'; $cetak=new Sedan; echo$cetak->merk; |
Jika kita jalankan pada browser maka akan terlihat sebuah pesan error seperti dibawah ini, yang melarang kita untuk menurunkan class Mobil yang terdapat pada script diatas, karana telah di set sebagai final class
Berikutnya kita akan bahas tentang Abstract Class dan Abstract Method, merupakan sebuah class yang dapat di-instansiasi atau yang dapat di gunakan dan dapat dibuat menjadi sebuah object yang berperan sebagai kerangka dasar bagi class turunan, di dalam abstract class kita harus wajib memiliki class abstract method.
Abstract method yaitu merupakan sebuah method dasar yang harus di implementasikan ulang di dalam class anak (child class). Abstract class digunakan dalam inheritance/pewarisan, yang berfungsi untuk mewajibkan implementasi method yang sama dari semua method yang akan diturunkan dari abstract class, dan abstract class digunakan untuk membuat sebuah struktur logika penurunan didalam sebuah pemrograman berbasis object.
Berikut contoh dari abstract class
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | <?php // parent abstractclassHandpone{ public$merk='Sumsung'; protected$harga=5000000; private$nama='S7'; abstractpublicfunctionhallo(); } // child classTablet extendsHandpone{ publicfunctioncetak_harga(){ //akses propertydari class parend return$this->harga; } publicfunctioncetak_nama(){ return$this->nama; } // harus di deklarasikan ulang, jika tidak akan terjadi error publicfunction hallo(){ } } classhpextendsHandpone{ // deklarasi publicfunctionhallo(){ } } classSmartphoneextendsHandpone{ //deklarasi publicfunctionhallo(){ } } // object tablet $tampil= newTablet; echo$tampil->merk; echo'<br>'; echo$tampil->cetak_harga(); echo'<hr>'; $cetak=newhp; echo$cetak->merk; |
Pada contoh study kasus diatas terdapat sebuah abstract class Handphone maka kita wajib menurunkanya kepada class anak, jika kita telah membuat abstract method kita juga wajib membuat nama method yang sama pada anaknya (child)
Jika kita jalankan pada browser maka akan terlihat hasilnya seperti dibawah ini
Bagai mana teman cukup mudah bukan Cara Penggunaan Fungsi Final dan Abstract pada OOP nya, sekian dulu tutorial saya kali ini tentang Cara Penggunaan Fungsi Final dan Abstract pada OOP, Semoga bermanfaat.
Terimakasih.
Apa itu abstract class pada PHP?
Abstract Class adalah sebuah class yang tidak bisa di-instansiasi (tidak bisa dibuat menjadi objek) dan berperan sebagai 'kerangka dasar' bagi class turunannya. Di dalam abstract class umumnya akan memiliki abstract method.
Apakah yang dimaksud abstract method?
Abstract method adalah method yang tidak memiliki body (hanya deklarasi method) memiliki body (hanya deklarasi method). Abstract class tidak bisa dibuat obyeknya. Obyek hanya bisa dibuat dari non-abstract class (concrete class).
Kapan Dalam kondisi apa sebuah class abstract dibuat?
Abstract class dibuat ketika adanya hal yang cukup kompleks terjadi di saat pendefinisian di tahap awal pembangunan program.
Apa itu abstract class dalam OOP?
Class abstrak adalah class yang masih dalam bentuk abstrak. Karena bentuknya masih abstrak, dia tidak bisa dibuat langsung menjadi objek. Sebuah class agar dapat disebut class abstrak setidaknya memiliki satu atau lebih method abstrak.