Inheritance : PHP & Object Oriented Programming (OOP)

Inheritance : Pada Object Oriented Programming (OOP) dengan Pemrograman PHP

Inheritance atau pewarisan adalah suatu cara untuk membuat sebuah kelas yang baru dengan menggunakan kelas lain yang sebelumnya sudah dibuat. Pada hubungan inheritance, sebuah class turunan mewarisi kelas leluhur (parent class). mewarisi, maka semua atribut dan method class dari induk akan dibawa (kecuali  yang bersifat private), secara intrinsik menjadi bagian dari class anak. keuntungan yang didapat dari inheritance menambah fitur baru pada kelas anak dan mengubah atau mengganti fitur yang diwarisi dari kelas parent

berikut contoh dengan php :

<?php  
/* inheritance.php */  
class Bapak {  
  private $nama = "Bapak";  
  
  function Bapak($n) {  
    $this->nama = $n;  
  }  
  
  function Hallo() {  
    echo "Halo, saya $this->nama <br>";  
  }  
}  
  
class Anak extends Bapak {  
  function Hai(){  
    echo "hai dari kelas anak";  
  }  
}  
  
$test = new Anak("Anak dari Bapak");  
$test->Hallo();  
$test->Hai();  
?>

Hasil :

Halo, saya Anak dari Bapak 
 hai dari kelas anak

untuk melihat materi sebelumnya ada di Pemrograman Web II : PHP & Object Oriented Programming (OOP)

Contoh Lain impementasi dari Inheritance :

<?php  
class Fruit {  
  // Properties  
  public $name;  
  public $color;  
  
  // Methods  
  function set_name($name) {  
    $this->name = $name;  
  }  
  function get_name() {  
    return $this->name;  
  }  
  function set_color($color) {  
    $this->color = $color;  
  }  
  function get_color() {  
    return $this->color;  
  }  
}  
  
$apple = new Fruit();  
$apple->set_name('Apple');  
$apple->set_color('Red');  
echo "Name: " . $apple->get_name();  
echo "<br>";  
echo "Color: " . $apple->get_color();  
?>

Hasilnya :

Name: Apple
 Color: Red 
<?php  
class Fruit {  
  public $name;  
  public $color;  
  public function __construct($name, $color) {  
    $this->name = $name;  
    $this->color = $color;  
  }  
  protected function intro() {  
    echo "Adalah Buah <b>{$this->name}</b> dan warnanya <b>{$this->color}</b><br>";  
  }  
  public function public_intro() {  
    echo $this->intro();  
  }  
}  
  
class Strawberry extends Fruit {  
  public function message() {  
    echo "Ini Buah atau jenis Berry ? ";  
  }  
}  
  
$apel = new Fruit("Apel","Hijau");  
$apel->public_intro();  
  
$strawberry = new Strawberry("Strawberry", "red");  
$strawberry->message();
// $strawberry->intro();  
?>

Hasil nya :

Adalah Buah Apel dan warnanya Hijau
Ini Buah atau jenis Berry ?