Contoh Inheritance (Pewarisan) di Java
diupdate 24 November 2023
Inheritance atau pewarisan, dalam paradigma pemrograman berorientasi objek bisa diartikan membuat suatu class yang mirip seperti class yang lain. Ada class yang ditiru (class induk / parent / superclass) dan ada class hasil tiruan / hasil turunan (class child / subclass). Subclass akan mewarisi atribut dan method-method yang ada pada superclass.
Contoh inheritance atau pewarisan dalam OOP misalnya sebagai berikut. Ada class Karyawan yang memiliki atribut NIP, nama, dan jenis kelamin serta dua buah method yaitu masukKerja() dan beriNama(String nama).
Apabila digambarkan dalam class diagram seperti berikut
Dibuat class baru yaitu Dosen, class Dosen adalah turunan dari class Karyawan. Dalam bahasa pemrograman Java untuk membuat pewarisan digunakan keyword extends ketika menuliskan deklarasi class (lihat baris ke tiga di source berikut).
Class Dosen akan mewarisi atribut NIP, nama, dan jenisKelamin yang dimiliki oleh class Karyawan. Begitu pula dengan method masukKerja dan beriNama yang ada di class Karyawan akan diwarisi pula oleh class Dosen. Ketika class Dosen dibuat objectnya, object dosen dapat menggunakan atribut-atribut dan method-method yang dimiliki oleh kelas induk (class induk : Karyawan). Misalnya di sini dosen dapat menggunakan method masukKerja() yang dideklarasikan di class Karyawan.
Hasil ketika program dijalankan adalah muncul tulisan Masuk Kerja, hasil eksekusi method masukKerja() di superclass (class Karyawan)
source code lengkap bisa dilihat di Github https://github.com/ardhiesta/ContohInheritance
Artikel ini adalah artikel yang paling banyak dibaca di blog saya. Silakan baca juga postingan berikut yang memuat tutorial lain seputar pemrograman Java
penggunaan method di Java
error pada Main.java line 5
ReplyDeleteTerima kasih sudah mampir dan mencoba
DeleteSaya coba tidak error kok kak
Bisa dituliskan pesan error yang kakak alami apa?
done bwang
Delete
ReplyDeleteprogram inheritance ini setiap bikin class beda file atau tetap satu file program bang ? mohon jawabannya...Terimakasih
beda file
DeleteError pada main.java
ReplyDeleteproblem "this method has a contructor name"
Saya coba tidak ada masalah kak, mungkin ada typo. Silakan bisa dicopy source code lengkapnya dari Github https://github.com/ardhiesta/ContohInheritance (dibuat dengan Apache Netbeans 12.2)
Deleteapakah sama dengan intelijj idea kak
ReplyDeletesama saja
Deleteitu bukan eror class nya di sesuaiin namanya sama pekage nya di sesuaikan klo beda ya eror
ReplyDeletekak kalo penginputan namanya di ketik dikeyboard gimana ya,, kan kalo ini langsung dalam program atau input hardcode, nah saya mau inputnya dikeyboard
ReplyDeletepakai Scanner, contohnya seperti ini https://www.inf.unibz.it/~calvanese/teaching/05-06-ip/lecture-notes/uni02/node33.html
Deletekalo inputannya bukan secara hardcode tapi lewat keyboard itu gimana ya?
ReplyDeletepakai Scanner, contohnya seperti ini https://www.inf.unibz.it/~calvanese/teaching/05-06-ip/lecture-notes/uni02/node33.html
Deletedi rnjoin aja
Deletepakai Scanner
Deletesudah berhasil,namun outputnya ga keluar bang :(
ReplyDeleteini gak bisa nambah data atau memeng keluarnya cuman masuk kerja
ReplyDeletekeluarnya memang cuma masuk kerja, data yang mau ditambah contohnya bagaimana?
Delete