Belajar Konsep Pewarisan (Inheritance) pada Java (OOP)

Pengertian

Pewarisan(Inheritance)merupakan salah satu konsep inti pada pemrograman berorientasi objek (OOP), dimana kelas dapat memiliki keturunan (subclass) dan induk (superclass) sehingga menghasilkan sebuah hirarki kelas. Sebenarnya, dalam Bahasa Pemrograman Java semua kelas merupakan keturunan (subclass) dari kelas object. Sehingga, kelas object merupakan kelas induk semua kelas. Tetapi, pada kenyataannya kita tidak pernah menghubungkan kelas yang kita buat dengan menggunakan kata kunci extends. Ini artinya, hubungan extends dengan kelas objek tidak wajib kita cantumkan.

Dalam konsep pewarisan pada kehidupan sehari-hari, terdapat 2 hal yang diwariskan dari kelas super (induk) kepada kelas sub(anak),yaitu atribut dan metode.

Macam-maca kelas pada Konsep Pewarisan

Terdapat 2 macam kelas pada konsep pewarisan,yaitu:

  • Super (parent/induk)

Kelas super merupakan kelas induk yang terletak diatas kelas tersebut.kelas super dapat mewariskan atribut dan metode kepada semua kelas sub(keturunannya).

  • Sub (child/anak)

Kelas sub merupakan kelas anak yang terletak dibawah kelas tersebut.kelas sub akan menerima warisan dari kelas super berupa atribut dan metode.

Untuk lebih memahami perbedaan antara Kelas super dan kelas sub,mari kita perhatikan contoh Hirarki  Kelas di bawah ini :

Contoh Hirarki Kelas pada Java
Contoh Hirarki Kelas pada Java

Keterangan :

  • Kelas A merupakan kelas super dari kelas B dan C.sedangkan kelas B dan C merupakan kelas sub dari Kelas A.
  • Kelas B merupakan kelas super dari kelas D dan E.sedangkan kelas D dan E merupakan kelas sub dari Kelas B.
  • Kelas E merupakan kelas super dari kelas F .sedangkan kelas F merupakan kelas sub dari kelas E

Aturan Pewarisan Dalam Bahasa Java

Terdapat beberapa aturan tentang pewarisan dalam bahasa Java yang wajib kita perhatikan,diantaranya sebagai berikut:

1.Java mengizinkan pewarisan banyak keturunan. Artinya sebuah kelas boleh memiliki banyak kelas sub.

2.Java tidak mengizinkan pewarisan banyak induk. Artinya sebuah kelas hanya boleh memiliki 1 kelas super.

3.Java mengizinkan pewarisan bertingkat. Artinya sebuah kelas boleh memiliki kelas anak dan kelas anaknya tersebut boleh memiliki anak lagi, dan seterusnya.

4.ava mengizinkan kelas sub untuk memiliki atribut dan metode yang tidak sama dengan kelas super-nya.

5.Ketika sebuah kelas menjadi kelas sub, maka jumlah atribut dan metode yang dimiliki oleh kelas sub tersebut menjadi jumlah atribut dan metode dari kelas super + jumlah atribut dan metode dari kelas sub. Contoh : Kelas B merupakan kelas sub dari kelas A. Kelas A mendeklarasikan atribut atr1, atr2 dan metode met1(), met2(), sedangkan kelas B mendeklarasikan atribut atr3 dan metode met3(). Maka atribut dan metode yang dimiliki oleh kelas B meliputi atr1, atr2, atr3, met1(), met2(), dan met3().

Catatan Penting

Dalam bahasa java semua kelas sebenarnya merupakan turunan dari kelas Object.
Jadi,sekalipun kita tidak menghubungkan (extends) suatu kelas dengan kelas object,secara default
Java akan membuat kelas tersebut diturunkan dari kelas Object.sehingga,
Kelas object merupakan kelas super dari semua kelas yang ada dalam Java

Penggunaan Kata Kunci Extends

Implementasi konsep pewarisan dalam Bahasa java adalah menghubungkan kelas sub dan kelas super dengan menggunakan kata kunci extends. Kata kunci extends adalah kata kunci yang digunakan untuk merelasikan antara kelas sub (anak) dan kelas super (induk), sehingga menjadi suatu relasi pewarisan. Kata kunci extends dituliskan pada kelas subnya.

Artinya kelas anak yang mendeklarasikan siapa kelas induknya, dan bukanlah kelas induk yang mendeklarasikan siapa saja kelas anaknya.

Berikut adalah cara menggunakan kata kunci extends :

<modifier> class <kelasSub> extends <kelasSuper> {
}

Contoh

public class B extends A {
}

Artinya kelas B merupakan sub dari kelas A.

Contoh Penggunaan Kata Kunci Extends

Berikut adalah contoh penggunaan kata kunci extends

Class A{
public int a;
public void a(){
System.out.println(“metode a()dari kelas A”);
}
}

Class B extends A{
public int b;
public void b(){
a();
System.out.println(“metode ()dari kelas B”);
}
}
Class C extends B{
public static void main(String[]args){
c kelasC =new C();
kelasC.a=10;
kelasC.b=15;
kelasC.a();
System.out.println(“a=”+kelasC.a);
kelasC.b();
System.out.println(“b=”+kelasC.b);
}
}

Tampilan Output

Metode a() dari kelas A
A = 10
Metode a() dari Kelas A
Metode b() dari kelas B
b = 15

Penjelasan

Hirarki dari contoh program di atas adalah kelas B merupakan anak dari kelas A,dan kelas C merupakan anak dari kelas B,dan secara tidak langsung masih merupakan keturunan dari kelas A.

Jika hirarki tersebut digambarkan, maka akan terlihat seperti ini .

Hirarki Kelas
Hirarki Kelas

Keterangan :

+ artinya modifier public

Materi selanjutnya yang harus dipelajari pada Konsep Pewarisan (Inheritance) pada Java (OOP) adalah Penggunaan Modifier Protected. Materi tersebut bisa teman-teman baca disini : Penggunaan Modifier Protected dalam Konsep Pewarisan Java

Tags : pengertian inheritance pada java,pengertian inheritance java,contoh inheritance java,contoh inheritance dalam kehidupan sehari hari,contoh program inheritance pada netbeans,inheritance adalah,program inheritance java,polimorfisme java

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

This site uses Akismet to reduce spam. Learn how your comment data is processed.