Advertisement

Responsive Advertisement

Inheritance/ Penurunan PBO


Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat 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 dapat mewarisi apa-apa yang dipunyai oleh parent class- nya, sehingga member dari suatu subclass adalah terdiri dari apa-apa yang ia punyai dan juga apa-apa yang ia warisi dari class parent-nya. Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas (extend) parent class-nya.
Di dalam Java untuk mendeklarasikan suatu class sebagai subclass dilakukan dengan cara menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti  dengan  nama  parent  class-nya.  Kata  kunci  extends  tersebut  memberitahu kompiler Java bahwa kita ingin melakukan perluasan class. Berikut adalah contoh deklarasi inheritance. Contoh:


public class B extends A {

...

}









Contoh diatas memberitahukan kompiler Java bahwa kita ingin meng-extend class A ke class  B.  Dengan  kata  lainclass  B  adalah  subclass  (class  turunan)  dari  class  A, sedangkan class A adalah parent class dari class B.
Java hanya memperkenankan adanya single inheritance. Konsep single inheritance hanya memperbolehkan suatu sublass mempunyai satu parent class. Dengan konsep single inheritance ini, masalah pewarisan akan dapat diamati dengan mudah. Konsep single inheritance bisa dilihat pada Gambar 11.1.   Pada gambar tersebut bisa dilihat bahwa tiap class pasti memiliki hanya satu perant class. Java mengijinkan suatu sub class untuk memiliki anak lagi. Hal ini disebut dengan konsep multi level inheritance. Contohnya class Kendaraan memiliki class anak yaitu Bermotor, dan class
Bermotor memiliki class anak lagi yaitu Mobil dan Pesawat.
Secara lengkap silakan download disini


Post a Comment

0 Comments