A. Konsep Dasar
Pewarisan merupakan
salah satu karakteristik dari pemrograman berorientasi objek. Kita dapat menciptakan objek baru yang
diturunkan dari objek lain. Objek baru ini sering disebut dengan objek turunan (sub class) sedang objek induknya sering disebut
dengan parent class(base class). Sifat yang terkandung pada
objek turunan adalah sifat hasil pewarisan dari sifat-sifat yang terdapat pada
objek induk. Maka dari itu proses ini sering disebut dengan proses pewarisan
(inheritance).
Suatu subclass dapat
mewarisi apa-apa yang dipunyai oleh parent class. Karena suatu subclass dapat
mewarisi apa apa yang dipunyai oleh parent class-nya, maka 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. Dengan memanfaatkan konsep
pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik
yang lebih umum akan didapatkan dari class darimana ia diturunkan.
B.
Deklarasi Pewarisan (Inheritance)
Deklarasi yang digunakan adalah
dengan 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.
public class B extends A { … }
Pada saat dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class Object.
public class A extends Object { … }
public class B extends A { … }
Pada saat dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class Object.
public class A extends Object { … }
C.
Penerapan pewarisan (Inheritance)
Kita baru perlu menerapkan inheritance pada saat kita jumpai
ada suatu class
yang dapat 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 tambahan data member departemen.
Sebenarnya yang terjadi disana adalah class Manajer merupakan perluasan dari class Pegawai dengan tambahan data member departemen.
Disini perlu memakai konsep inheritance, sehingga class Manajer dapat kita tuliskan seperti berikut :
public class Manajer extends Pegawai { public String departemen; }
yang dapat 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 tambahan data member departemen.
Sebenarnya yang terjadi disana adalah class Manajer merupakan perluasan dari class Pegawai dengan tambahan data member departemen.
Disini perlu memakai konsep inheritance, sehingga class Manajer dapat kita tuliskan seperti berikut :
public class Manajer extends Pegawai { public String departemen; }
D.
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 dapat mendefinisikan superclass khusus yang
bersifat generik, yang disebut abstract class, untuk mendefinisikan class
dengan behaviour dan state secara umum.
0 comments:
Post a Comment