Konsep Oop Inheritance


Inheritance atau sanggup disebut sebagai pewarisan. Konsep Inheritance dalam pemrograman berorientasi objek memungkinkan suatu kelas sanggup mewariskan atribut dan method kepada kelas lainnya atau sub kelas sehingga membentuk hirarki kelas. Pada inheritance, satu kelas sanggup lebih dispesifikkan menjadi satu atau lebih sub-kelas. Sub-kelas akan mewarisi semua atribut dan method daripada super-kelasnya. Namun sub-kelas sanggup mempunyai atribut dan method lain yang spesifik kepada dirinya sendiri.

Sebagai referensi kita akan menciptakan kelas Bangun sebagai super kelas dan kelas Bangun2D dan Bangun3D sebagai sub kelasnya sesuai dengan class diagram di bawah ini.


Buat Kelas Bangun

public class Bangun {     String nama;      Bangun(String nama){         this.nama = nama;     }      public String getNama(){         return nama;     } } 

Buat sub kelas Bangun2D

public class Bangun2D extends Bangun{     int panjang;     int lebar;     int sisi;      Bangun2D(String nama, int sisi){         super(nama);         this.sisi = sisi;     }      Bangun2D(String nama, int panjang, int lebar){         super(nama);         this.panjang = panjang;         this.lebar = lebar;     }      public void hitungLuasPersegi(){         int luas = sisi * sisi;         System.out.println("Luas : "+luas);     }      public void hitungLuasPersegiPanjang(){         int luas = panjang * lebar;         System.out.println("Luas : "+luas);     }      public void hitungKelilingPersegi(){         int keliling = 4 * sisi;         System.out.println("Keliling : "+keliling);     }      public void hitungKelilingPersegiPanjang(){         int keliling = 2 * (panjang + lebar);         System.out.println("Keliling : "+keliling);     } } 


Buat sub kelas Bangun3D

public class Bangun3D extends Bangun2D{     int tinggi;      Bangun3D(String nama, int sisi){         super(nama, sisi);     }      Bangun3D(String nama, int panjang, int lebar, int tinggi){         super(nama, panjang, lebar);         this.tinggi = tinggi;     }      public void hitungVolumeKubus(){         int volume = sisi * sisi * sisi;         System.out.println("Volume : "+volume);     }      public void hitungVolumeBalok(){         int volume = panjang * lebar * tinggi;         System.out.println("Volume : "+volume);     } }  


Buat kelas mainBangun sebagai main kelasnya

public class mainBangun {     public static void main(String[]args){         Bangun2D dua1 = new Bangun2D("Persegi", 5);         System.out.println("Nama : "+dua1.getNama());         dua1.hitungLuasPersegi();         dua1.hitungKelilingPersegi();          System.out.println();          Bangun2D dua2 = new Bangun2D("Persegi Panjang", 2, 3);         System.out.println("Nama : "+dua2.getNama());         dua2.hitungLuasPersegiPanjang();         dua2.hitungKelilingPersegiPanjang();          System.out.println("---------------------");                  Bangun3D tiga1 = new Bangun3D("Kubus", 5);         System.out.println("Nama : "+tiga1.getNama());         tiga1.hitungVolumeKubus();          System.out.println();          Bangun3D tiga2 = new Bangun3D("Balok", 2, 3, 4);         System.out.println("Nama : "+tiga2.getNama());         tiga2.hitungVolumeBalok();     } } 


Jalankan kelas mainBangun maka outputnya akan tampilkan hasil perhitungan kelas Bangun2D dan Bangun3D

Nama : Persegi Luas : 25 Keliling : 20  Nama : Persegi Panjang Luas : 6 Keliling : 10 --------------------- Nama : Kubus Volume : 125  Nama : Balok Volume : 24 


Sekian dan Terima Kasih
Happy Coding :)

Comments

Popular posts from this blog

Implementasi Basis Data

(Tutorial Ios) Custom Uitableviewcell In Uitableview

(Tutorial Android) Image Loader Using Glide