Inheritance (Pewarisan) merupakan salah satu dari tiga konsep dasar OOP. 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 super class. Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class.
Dalam dunia riil, suatu entitas turunan dapat mewarisi apa-apa yang dipunyai dari entitas induknya. Misalkan saja antara entitas Bapak dan entitas Anak. Entitas anak dapat mewarisi apa-apa yang dipunyai oleh entitas Bapaknya. Demikian juga dalam konsep inheritance, suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class. Inilah yang terpenting dari konsep inheritance.
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.
Dalam dunia riil, suatu entitas turunan dapat mewarisi apa-apa yang dipunyai dari entitas induknya. Misalkan saja antara entitas Bapak dan entitas Anak. Entitas anak dapat mewarisi apa-apa yang dipunyai oleh entitas Bapaknya. Demikian juga dalam konsep inheritance, suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class. Inilah yang terpenting dari konsep inheritance.
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.
Sebagai Contoh :
Jadi, kita mempunyai 3 kelas disini, yaitu :
1. Main Class
2. Kelas Bapak (Super Class)
3. Kelas Anak (Sub Class)
1. Langkah pertama kita membuka aplikasi IDE seperti Netbeans, Eclipse, atau Geany. Pilih salah satu. Saya akan memberi contoh dengan menggunakan Netbeans.
2. Setelah aplikasi terbuka, pilih new project.
3. Setelah itu pilih java dan tekan next, ubah nama project nya sesuai keinginan anda. Saya mengganti nama projectnya dengan BelajarInheritance. Tekan next
(Nama project sekaligus menjadi nama main class)
4. Setelah itu buat class baru dengan nama Bapak
Lalu masukan koding seperti dibawah ini pada lembar kerja :
Untuk menginduk pada suatu class, kita menggunakan kata kunci extend. Untuk mengilustrasikan ini, kita akan membuat contoh class induk. Dimisalkan kita mempunyai class induk yang dinamakan Bapak.
Perhatikan bahwa atribut name dan address dideklarasikan sebagai protected. Alasannya kita melakukan ini yaitu, kita inginkan atribut-atribut ini untuk bisa diakses oleh subclass (anak) dari superclass (Bapak). Jika kita mendeklarasikannya sebagai private, subclass tidak dapat menggunakannya. Catatan bahwa semua properti dari superclass yang dideklarasikan sebagai public, protected dan default dapat diakses oleh subclass-nya.
Sekarang, kita ingin membuat class lain bernama Anak meng-extend class Bapak, sehingga kita dapat mewariskan semua properti dan method dari yang ada pada class Bapak.
5. Buat class baru, dengan cara klik icon new file atau ctrl+N, seperti langkah no 4
6. Setelah itu, kita instansiasi objek pada main class (BelajarInheritance), caranya seperti berikut :
Maka kita bisa memanggil method dari class bapak (super class)
7. Setelah itu jalankan program dengan klik ikon run atau tekan F6. Maka akan tampil hasil seperti dibawah ini :
Sekian, Selamat Mencoba...
Untuk Sourcode yang lebih lengkap, bisa klik disini
0 Komentar