OOP PHP Pengertian Inheritance ( pewarisan )
Pengertian Inheritance
OOP PHP Pengertian Inheritance – Inheritance adalah salah satu konsep dalam pemrograman berorientasi objek (OOP) yang memungkinkan suatu class (kelas) untuk mewarisi sifat dan perilaku dari class lain yang lebih umum disebut sebagai superclass (kelas induk). Dengan menggunakan inheritance, subclass (kelas anak) dapat mengambil sifat dan perilaku dari superclass yang telah didefinisikan sebelumnya tanpa perlu menulis kode dari awal.
Dalam OOP, inheritance memungkinkan penggunaan hierarki class yang memungkinkan class-class yang berbeda memiliki sifat dan perilaku yang sama. Sebagai contoh, class “Mobil” dapat menjadi superclass untuk class-class “SUV”, “Sedan”, dan “Pickup” yang memiliki beberapa sifat dan perilaku yang sama, seperti jumlah roda, kemampuan mesin, dan bagian-bagian dasar yang sama.
Inheritance juga memudahkan pengelolaan kode dan pemeliharaan program secara keseluruhan, karena subclass dapat memperluas fungsionalitas superclass tanpa mengubah kode superclass tersebut secara langsung. Hal ini juga memungkinkan penggunaan konsep polimorfisme, di mana objek dari class yang berbeda dapat digunakan secara bersamaan sebagai objek yang sama dalam konteks tertentu.
Contoh inheritance dalam pemrograman PHP
Buatlah Class Kendaraan
<?php
class Kendaraan
{
public $pengguna;
public function setPengguna($pengguna = "Ahmad Mubarok")
{
return $this->pengguna = $pengguna;
}
}
Dalam Class Kendaraan ini memiliki satu property dan satu function yang akan digunakan untuk menampilkan nama pengguna.
Kemudian buatlah Class Motor
<?php
include 'Kendaraan.php';
class Motor extends Kendaraan
{
public function Jalan()
{
return "Motor sedang berjalan";
}
}
class MotorSport extends Motor
{
public $Turbo = false;
public function setKecepatan()
{
$this->Turbo = true;
return "Kecepatan Full";
}
}
$motor = new MotorSport();
echo "pengguna :" . $motor->setPengguna();
echo "<br>" . $motor->Jalan();
echo "<br>";
echo $motor->setKecepatan();
Dalam Class Motor ini merupakan turunan dari Class Kendaraan, menggunakan keyword “Extends” yang ditujukan kepada Class Kendaraan maka Class Motor secara otomatis menjadi clid Class dari Class Kendaraan dan bisa memanggil property dan method yang ada di Class kendaraan. Dan pada code diatas juga terdapat Class MotorSport yang merupakan Class turunan dari Class Motor. Maka Class yang posisinya dipaling bawah adalah Class MotorSport. Kemudian kita membuat instansiasi $motor = new MotorSport, Setelah itu baru kita bisa panggil property dan method dari ketiga Class tersebut.
Contoh lain Inheritance atau pewarisan
<?php
include 'Kendaraan.php';
class mobil extends Kendaraan
{
public function Jalan()
{
return "mobil sedang berjalan";
}
}
class mobilSport extends mobil
{
public $Turbo = false;
public function setKecepatan()
{
$this->Turbo = true;
return "Mobil Kecepatan Penuh";
}
}
$mobil = new mobilSport();
echo "pengguna :" . $mobil->setPengguna();
echo "<br>" . $mobil->Jalan();
echo "<br>";
echo $mobil->setKecepatan();
apa kelebihan inheritance dalam pemrograman
Inheritance adalah konsep dalam pemrograman yang memungkinkan suatu kelas untuk mewarisi sifat dan perilaku dari kelas induk atau superclassnya. Berikut adalah beberapa kelebihan dari penggunaan inheritance dalam pemrograman:
Reusability: Inheritance memungkinkan programmer untuk menulis kode sekali dan menggunakannya kembali dalam banyak kelas, sehingga menghemat waktu dan usaha.
Modularitas: Dengan inheritance, kode dapat dibagi menjadi modul yang lebih kecil dan mudah diatur. Ini membuat kode lebih mudah dipelihara dan dimodifikasi.
Polimorfisme: Polimorfisme adalah kemampuan objek untuk menunjukkan perilaku yang berbeda tergantung pada konteksnya. Inheritance memungkinkan programmer untuk memanfaatkan konsep ini dengan membuat metode yang sama di berbagai kelas yang berbeda.
Abstraksi: Inheritance memungkinkan programmer untuk membuat kelas abstrak yang tidak dapat diinstansiasi secara langsung. Kelas-kelas ini hanya berfungsi sebagai blueprint untuk kelas turunan mereka.
Hierarki: Inheritance memungkinkan programmer untuk membuat hierarki kelas yang jelas dan terorganisir. Ini membuat kode lebih mudah dipahami dan memudahkan pengembangan dan perawatan sistem yang kompleks.
Secara keseluruhan, inheritance sangat berguna dalam pemrograman karena memungkinkan programmer untuk membuat kode yang lebih terorganisir, mudah dipelihara, dan mudah dimodifikasi.
apa kekurangannya inheritance dalam pemrograman
Meskipun inheritance memiliki banyak kelebihan dalam pemrograman, namun juga memiliki beberapa kekurangan yang perlu diperhatikan, antara lain:
Overriding masalah: Jika suatu kelas turunan ingin mengubah perilaku metode yang diwarisi dari superclassnya, maka perlu melakukan overriding. Namun, jika overriding tidak dilakukan dengan benar, dapat mengakibatkan masalah pada program.
Ketergantungan yang tinggi: Penerapan inheritance dapat membuat kelas turunan sangat tergantung pada superclassnya. Jika superclass mengalami perubahan, maka kelas turunan juga harus diubah sesuai dengan perubahan tersebut.
Kebingungan dan kerumitan: Hierarki kelas yang rumit dapat membuat penggunaan inheritance menjadi rumit dan sulit dipahami. Hal ini dapat menyebabkan masalah ketika memperbaiki atau memodifikasi kode.
Kesalahan desain: Penggunaan inheritance yang salah dapat mengakibatkan kesalahan desain dalam program. Misalnya, ketika inheritance digunakan untuk tujuan yang tidak tepat, seperti hanya untuk membagi kode menjadi kelas yang lebih kecil tanpa mempertimbangkan hubungan antara kelas.
Performa: Meskipun inheritance memiliki manfaat yang signifikan, namun terkadang dapat mempengaruhi performa program. Hal ini terutama terjadi ketika ada banyak kelas turunan yang menggunakan inheritance secara berlebihan, sehingga mengakibatkan peningkatan waktu eksekusi dan penggunaan memori.
Dalam pengembangan perangkat lunak, inheritance harus digunakan secara hati-hati untuk memastikan bahwa kelebihan penggunaannya melebihi kekurangan yang mungkin timbul.
Sumber : www.w3schools.com