Posted by Materi Teknik Informatika • Informasi Teknologi Informasi • Digital Marketing on 10/03/2015
 
Pertanyaan dalam konsep OOP, mengapa kita harus menggunakan Inheritance ini?
 
Analoginya dalam sebuah kendaraan, memiliki kendaraan yang beroda dan tidak beroda, warisan dari kendaraan beroda yaitu mobil, sepeda, dll. sedangkan untuk kendaraan yang tidak beroda warisannya yaitu perahu, kapal, dll.

 
Langsung saja pada tahap implementasi, dimisalkan kita memiliki Class Venicle, Mobil dan Sepeda.
<html>
  <head>
    <title>Inheritance - PHP OOP</title>
  </head>
  <body>
    <p>
      <?php
        class Venicle {
          public $wheel = true;
        }
        class Mobil extends Venicle {
          public $jazz = true;
        }
      
        class Sepeda {
            public $pixie = true;
        } 
        $kendaraan1 = new Mobil();
        $kendaraan2 = new Sepeda();        
        // Pemanggilan Class dengan Inheritance
        if (property_exists($kendaraan1, "jazz")) {
          echo "Saya mempunyai kendaraan beroda 4 yaitu mobil!";
        }
        
        if (property_exists($kendaraan2, "pixie")) {
          echo "Saya mempunyai kendaraan beroda 2 yaitu sepeda!";
        }     
      
        // Implementasi Class dengan Inheritance
        if (property_exists($kendaraan1, "wheel")) { // Memangil variabel dari Class Venicle
          echo "Saya mempunyai kendaraan yang memiliki roda!";
        }
      ?>
    </p>
  </body>
</html> 
 
Untuk outputnya kita fokus ke "echo", bila penasaran kenapa tidak mencobanya?
 
Implementasi 
Inherincance pada script di atas terdapat kita memanggil variable 
wheel yang telah di definisikan di Class Venicle, sedangkan kita mengeksekusinya pada Class Mobil.
Jadi, bisa kita simpulkan penggunaan 
Inheritance terjadi saat kita memiliki tujuan dari pembuatan Class yang sama dengan sedikit perubahan namun tidak perlu menulis ulang seluruh 
script yang kita buat sebelumnya hanya melakukan 
extends saja.
property_exists digunakan untuk mengambil nilai property yang sudah di definisikan sebelumnya pada Parent Class.