Skip to main content

7. OOP - Inheritance.html

  1. Inheritance

Inheritance atau pewarisan dalam java merupakan sebuah konsep dari OOP yang berguna untuk mewariskan sifat atau perilaku dari superclass. Inheritance memungkinkan subclass atau class turunan untuk menggunakan variabel, method, dan constructor dari superclass tanpa harus menulis ulang secara berulang. Class di java bisa saja memiliki satu atau bahkan lebih subclass atau class turunan yang mewarisinya.

Konsep dasar dari inheritance ialah membuat sebuah hirarki dari class, yang dimana class yang bersifat general akan menjadi induk dari class yang lebih spesifik atau lebih gampangnya isi dari class utama atau superclass dapat digunakan secara langsung oleh subclass atau class turunannya itu yang disebut dengan pewarisan atau inheritance.

Dalam penggunaan inheritance di dalam bahasa pemrograman java menggunakan sintaks extends. Untuk setiap class yang ingin menggunakan variabel atau method dari class lain harus menggunakan sintaks extends lalu diikuti dengan nama class yang ingin diwarisi. Contohnya seperti berikut:

Pada contoh diatas dapat dilihat bahwa di dalam class Inheritance terdapat dua class, yaitu class Animal dan class Sheep. Dari kedua class tersebut, class Animal berperan menjadi superclass atau yang mewarisi sifat dan class Sheep berperan sebagai subclass atau class turunan dan yang diwarisi sifat dari class Animal. Pewarisan sifat dapat dilihat langsung pada contoh pemanggilan method sleep oleh object mySheep, sedangkan method sleep hanya ada di dalam class Animal.

Ada beberapa jenis tipe dari implementasi inheritance yang ada di dalam bahasa pemrograman java, diantaranya seperti berikut:

1.    Single Inheritance

Single inheritance pada bahasa java merupakan tipe inheritance yang hanya mewarisi sifat dan perilaku dari satu superclass saja. Contohnya seperti berikut:

2.    Multilevel Inheritance

Multilevel inheritance pada bahasa java merupakan tipe inheritance yang dimana ada sebuah class yang mewarisi sifat dan perilaku dari superclass dan superclass tersebut mewarisi sifat dari superclass lainnya.

3.    Hierarchical Inheritance

Hierarchical inheritance pada bahasa java merupakan tipe inheritance yang dimana superclass mewarisi sifat dan perilakunya ke banyak subclass atau turunannya.


Last modified: Sunday, 13 August 2023, 10:47 AM