-->
Inheritas (Konsep Dasar Inheritas,Subclassing: Single Inheritance,Constructor, Kriteria Aksesibilitas, Keyword Super, Inheritas Bertingkat)
4/ 5 stars - "Inheritas (Konsep Dasar Inheritas,Subclassing: Single Inheritance,Constructor, Kriteria Aksesibilitas, Keyword Super, Inheritas Bertingkat)" Assalamu'alaikum wr.wb .. Nah Sekarang masih perihal OOP (OBJECT ORIENTED PROGRAMMING) atau PROGRAM BERORIENTASI OBJEK.  S...

Inheritas (Konsep Dasar Inheritas,Subclassing: Single Inheritance,Constructor, Kriteria Aksesibilitas, Keyword Super, Inheritas Bertingkat)



Assalamu'alaikum wr.wb ..

Nah Sekarang masih perihal OOP (OBJECT ORIENTED PROGRAMMING) atau PROGRAM BERORIENTASI OBJEK. 


Sekarang Saya Akan membahas mengenai Inheritas atau Inheritance ... 

PENGERTIAN PEWARISAN (INHERITANCE)
Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek sanggup mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class sanggup mempunyai class turunan.

Suatu class yang mempunyai class turunan dinamakan parent class atau base class. Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class. Suatu subclass sanggup mewarisi apa-apa yang dipunyai oleh parent class.

Karena suatu subclass sanggup mewarisi apa apa yang dipunyai oleh parent class-nya, maka member dari suatu subclass yaitu terdiri dari apa-apa yang ia punyai dan juga apa-apa yang ia warisi dari class parent-nya.

Kesimpulannya, boleh dikatakan bahwa suatu subclass yaitu tidak lain hanya memperluas (extend) parent class-nya.

Dari hirarki diatas sanggup dilihat bahwa, semakin kebawah, class akan semakin bersifat spesifik. Class mamalia mempunyai seluruh sifat yang dimiliki oleh binatang, demikian halnya juga macan , kucing, Paus dan Monyet mempunyai seluruh sifat yang diturunkan dari class mamalia.

Dengan konsep ini, karakteristik yang dimiliki oleh class hewan cukup didefinisikan didefinisikan dalam class hewan saja.

Class mamalia tidak perlu mendefinisikan ulang apa yang telah dimiliki oleh class binatang, alasannya yaitu sebagai class turunannya, ia akan mendapat karakteristik dari class hewan secara otomatis. Demikian juga dengan class macan, kucing, Paus dan monyet, hanya perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya masing-masing.

Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia diturunkan.


DEKLARASI PEWARISAN (INHERITANCE)

Deklarasi yang dipakai yaitu dengan menambahkan kata kunci extends sesudah deklarasi nama class, lalu diikuti dengan nama parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa kita ingin melaksanakan ekspansi class.

public class B extends A {  }

Pada ketika dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class Object.

public class A extends Object {  }

KAPAN KITA MENERAPKAN INHERITANCE?
Kita gres perlu menerapkan inheritance pada ketika kita jumpai ada suatu class
yang sanggup diperluas dari class lain.

Misal terdapat class Pegawai public class Pegawai { public String nama; public double gaji; }Misal terdapat class Manager public class Manajer { public String nama; public double gaji;public String departemen; }

Dari 2 buah class diatas, kita lihat class Manajer mempunyai data member yang identik sama dengan class Pegawai, hanya saja ada aksesori data member departemen.

Sebenarnya yang terjadi disana yaitu class Manajer merupakan ekspansi dari class Pegawai dengan aksesori data member departemen.

Disini perlu menggunakan konsep inheritance, sehingga class Manajer sanggup kita tuliskan menyerupai berikut :

public class Manajer extends Pegawai { public String departemen; }


KEUNTUNGAN INHERITANCE


1. Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada.

2. Programmer Java sanggup mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.



ISTILAH INHERITANCE

Extends
Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass.

Superclass Superclass dipakai untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak.

Subclass Subclass yaitu class anak atau turunan secara hirarki dari superclass.

Super Keyword ini dipakai untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass.

Methode Overriding Pendefinisian ulang method yang sama pada subclass

Dalam inheritance, method overriding berbeda dengan method overloading. Kalau method overriding yaitu mendefinisikan kembali method yang sama, baik nama method maupun signature atau parameter yang diharapkan dalam subclass, kalau method overloading yaitu mendefinisikan method yang mempunyai nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama.


CONTOH LATIHAN INHERITANCE :
class Kotak{
double sisi1;
double sisi2;
double sisi3;
Kotak(){
}
Kotak(double satu, double dua, double tiga){
sisi1=satu;
sisi2=dua;
sisi3=tiga;
}
public void CetakKotak(){
System.out.println(”Isi Kotak yaitu = ” + sisi1 + sisi2 + sisi3);}
}
public class Kotakku extends Kotak{
double sisi1;
Kotakku(double pertama, double kedua, double ketiga, double tambahan)
{
super(pertama,kedua,ketiga);
sisi1=tambahan;
}
public static void main(String[] args) {
Kotakku Kotaksaya= new Kotakku(10,5,15,30);
Kotaksaya.CetakKotak();
System.out.println(”Sisi Pertama dari Kotak yaitu = ” + Kotaksaya.sisi1);
System.out.println(”Sisi Pertama dari Kotak yaitu = ” + Kotaksaya.sisi2);
System.out.println(”Sisi Pertama dari Kotak yaitu = ” + Kotaksaya.sisi3);
}
}
maka bila dijalankan kegiatan diatas akibatnya akan menyerupai gambar di bawah ini :



Semoga Bermanfaat .. 
#RPLWajibNgulik