Nurul Imam Studio

Belajar HTML, CSS, JavaScript, PHP & MySQL untuk pemula & tingkat lanjut

Jasa Pembuatan Website Profesional

Inheritance / Pewarisan Dalam OOP

Pada tutorial sebelumnya kita sudah membahas tentang Pengenalan Encapsulation. Pada Tutorial Sesi ini kita akan membahas tentang Inheritance atau Pewarisan dalam OOP. Apa itu Inheritance ? Untuk apa Pewarisan ini dipakai ? Satu kasus kita sudah mempunyai Class Mahasiswa, lalu kita ingin membuat objek baru yaitu Mata Kuliah. Kita tidak perlu membuat properti yang ada pada Class Mahasiswa kedalam Class Mata Kuliah. Kita cukup membuat Class Mata Kuliah yang merupakan turunan Class Mahasiswa.

Class Mata Kuliah ini akan memiliki properti dan method yang sama dengan Class Mahasiswa, namun ada property dan method khusus untuk Class Mata Kuliah ini. Dalam hal ini sudah pernah diterapkan pada sesi sebelumnya Encapsulation yang mana kita membuat class Nilai yang menjadi turunan class Mahasiswa. Bingung ? Coba kita langsung praktek pembuatan classnya dibawah ini.

<?php
/*
* Pewarisan
*/
class Mahasiswa
{
  public $nim;
  private $nama;
  protected $nilai;

  function __construct($nim, $nama, $nilai)
  {
    $this->nim = $nim;
    $this->nama = $nama;
    $this->nilai = $nilai;
  }

  public function NamaMhs()
  {
    return $this->nama;
  }

  protected function StatusNilai()
  {
    if ($this->nilai >= 60) {
      $status = "Lulus";
    } else {
      $status = "Gagal";
    }
    return $status;
  }
}

class MataKuliah extends Mahasiswa
{
  public $matakuliah;
  public $dosen;
  public $status;

  public function Matkul($matkul, $dosen)
  {
    $this->matakuliah = $matkul;
    $this->dosen      = $dosen;
  }

  // Mengambil property dari class turunan
  public function NilaiMhs()
  {
    return $this->nilai;
  }
  public function Grade()
  {
    if ($this->nilai >= 90) {
      $grade = "A";
    } elseif ($this->nilai >= 80) {
      $grade = "B";
    } elseif ($this->nilai >= 60) {
      $grade = "C";
    } elseif ($this->nilai >= 50) {
      $grade = "D";
    } else {
      $grade = "E";
    }
    return $grade;
  }

  // Mengambil method dari class turunan
  public function StatusNilaiMhs()
  {
    $this->status = $this->StatusNilai();
    return $this->status;
  }
}

$data = new MataKuliah(11212262, 'Nurul Imam', 90);
$data->Matkul("Pemrograman PHP", "Agus Irawan");
echo "NIM : ".$data->nim."<br />";
echo "Nama : ".$data->NamaMhs()."<br />";
echo "Mata Kuliah : ".$data->matakuliah."<br />";
echo "Dosen : ".$data->dosen."<br />";
echo "Nilai : ".$data->NilaiMhs()."<br />";
echo "Grade : ".$data->Grade()."<br />";
echo "Status : ".$data->StatusNilaiMhs()."<br />";
?>
Demo   Download

Coba jalankan script PHP diatas, property dan method yang ada pada class mahasiswa bisa kita baca di class MataKuliah. Gampang kan ? Selanjutnya kita akan coba berlatih menggabungkan semua sesi pembelajaran ini untuk melatih kita membuat Operasi Bilangan Dengan PHP OOP. Silahkan coba sendiri atau lihat artikel Latihan – Membuat Operasi Bilangan Dengan PHP OOP untuk melihat contohnya.

Demikianlah sesi pembelajaran Inheritance / Pewarisan Dalam OOP. Terus pantengin yah Daftar Pembelajaran PHP OOP ini.

2 Comments

  1. saiful_c172Reply

    mantap gan Inheritancenya…saya tunggu tutorial slanjutnya..

    • cobaReply

      klw bisa nanti saya request tutorial lengkap tentang polymorphisme…

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>