Nama/NIM : I Wayan Agus Kerta Nugraha / 1404505073
Jurusan/Fakultas/Universitas : Teknologi
Informasi/Teknik/Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, ST MT
Pada postingan kali ini, Saya akan sedikit berbagi tentang
penerapan pewarisan pada java. sebelum mulai pada penerapannya, mari
kita mulai dengan konsep pewarisanitu sendiri. 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. 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.
Setelah sedikit penjelasan tentang pewarisan dalam pemrograman
berorientasi objek, sekarang kita saya akan membagikan sedikit contoh
penerapannya dalam pemrograman dengan bahasa java. Sebelumnya, kita
harus mendefinisikan Super Class yg mana merupakan class yang
nantinya akan diturunkan ke Sub Class.
Dalam hal ini Anggap saja kita memiliki Superclass bernama Mamalia
dan Reptile. Mamalia memiliki sub class yaitu sapi, kucing, anjing.
Sedangkan pada reptile memiliki sub class yaitu ular, buaya, dan
cicak. Pada class Anjing, dibagi lagi menjadi 3 class, yaitu Bulldog,
Rottweiler, dan Golden. Pada class ular memiliki anak lagi menjadi
kobra dan pyton.
Berikut Codingan / script pada class "Mamalia" dan
"Reptile" Beserta sub class nya. Silahkan Anda Copy script
berikut kedalam IDE anda. Disini Saya Menggunakan Geany di Linux
Ubuntu 14.04.
//Kelas Mamalia
//Super Kelas untuk kelas anak : Sapi
class Mamalia {
int ID;
String Nama;
String Keterangan;
//konstructor
public Mamalia (int id, String nama, String keterangan) {
ID = id;
Nama = nama;
Keterangan = keterangan;
}
//methode
public void TampilkanRincian() {
System.out.println("ID = " +ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
}
}
//kelas Sapi
//Turunan dari kelas Mamalia, menggunakan "extends" dan "super"
class Sapi extends Mamalia {
String Jenis;
public Sapi (int mid, String nama, String keterangan, String jenis) {
super (mid, nama, keterangan);
Jenis = jenis;
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Kucing extends Mamalia {
String Jenis;
public Kucing (int mid, String nama, String keterangan, String jenis) {
super (mid, nama, keterangan);
Jenis = jenis;
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Anjing extends Mamalia {
String Jenis;
public Anjing (int mid, String nama, String keterangan, String jenis) {
super (mid, nama, keterangan);
Jenis = jenis;
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
//Kelas Bulldog
//Turunan dari kelas anjing, menggunakan "extends" dan "super"
class Bulldog extends Anjing {
public Bulldog (int aid, String nama, String keterangan, String jenis) {
super (aid, nama, keterangan, jenis);
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Rottweiler extends Anjing {
public Rottweiler (int aid, String nama, String keterangan, String jenis) {
super (aid, nama, keterangan, jenis);
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Golden extends Anjing {
public Golden (int aid, String nama, String keterangan, String jenis) {
super (aid, nama, keterangan, jenis);
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
//*******************************************************************************
//Kelas Reptile
//Super Kelas untuk kelas anak : ular
class Reptil {
int ID;
String Nama;
String Keterangan;
//konstructor
public Reptil (int id, String nama, String keterangan) {
ID = id;
Nama = nama;
Keterangan = keterangan;
}
//methode
public void TampilkanRincian() {
System.out.println("ID = " +ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
}
}
//kelas Buaya
//Turunan dari kelas Reptil, menggunakan "extends" dan "super"
class Buaya extends Reptil {
String Jenis;
//konstructor
public Buaya (int rid, String nama, String keterangan, String jenis) {
super (rid, nama, keterangan);
Jenis = jenis;
}
//methode
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Cicak extends Reptil {
String Jenis;
public Cicak (int rid, String nama, String keterangan, String jenis) {
super (rid, nama, keterangan);
Jenis = jenis;
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Ular extends Reptil {
String Jenis;
public Ular (int rid, String nama, String keterangan, String jenis) {
super (rid, nama, keterangan);
Jenis = jenis;
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
//kelas Kobra
//Turunan dari kelas Ular, menggunakan "extends" dan "super"
class Kobra extends Ular {
public Kobra (int uid, String nama, String keterangan, String jenis) {
super (uid, nama, keterangan, jenis);
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
class Phyton extends Ular {
public Phyton (int uid, String nama, String keterangan, String jenis) {
super (uid, nama, keterangan, jenis);
}
public void TampilkanRincian() {
System.out.println("ID = " + ID);
System.out.println("Nama Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis = " + Jenis);
}
}
Selanjutnya pada main yang terdapat pada public class Hewan, berisi
kode sebagai berikut.
//MAIN CLASS
public class Hewan {
public static void main(String[] args) {
System.out.println("Berikut merupakan jenis-jenis hewan :");
System.out.println(""); //pada c++ memiliki fungsi yang sama dengan endl;
Mamalia mamalia = new Mamalia(001, "Mamalia", "Hewan menyusui");
Sapi sapi = new Sapi(100, "Sapi", "Salah satu hewan mamalia", "herbivora");
Kucing kucing = new Kucing(110, "Kucing", "Salah satu hewan mamalia", "Karnivora");
Anjing anjing = new Anjing(120, "Anjing", "Salah satu hewan mamalia", "Karnivora");
Bulldog bulldog= new Bulldog(121, "Anjing Bulldog", "Salah satu hewan mamalia jenis anjing", "Karnivora");
Rottweiler rottweiler = new Rottweiler(122, "Anjing Rottweiler", "Salah satu hewan mamalia jenis anjing", "Karnivora");
Golden golden = new Golden(123, "Goldem", "Salah satu hewan mamalia jenis anjing", "Karnivora");
Reptil reptil = new Reptil(002, "Reptil", "Hewan berdarah dingin yang tubuhnya ditutupi sisik");
Buaya buaya = new Buaya(200, "Buaya", "Salah satu hewan reptil", "Karnivora");
Cicak cicak = new Cicak(210, "Cicak", "Salah satu hewan reptil", "Karnivora");
Ular ular = new Ular(220, "Ular", "Salah satu hewan reptil", "Karnivora");
Kobra kobra = new Kobra(221, "Ular Kobra", "Salah satu hewan reptil jenis ular", "Karnivora");
Phyton phyton = new Phyton(222, "Ular Pyton", "Salah satu hewan reptil jenis ular", "Karnivora");
//Output
mamalia.TampilkanRincian();
System.out.println("");
sapi.TampilkanRincian();
System.out.println("");
kucing.TampilkanRincian();
System.out.println("");
anjing.TampilkanRincian();
System.out.println("");
bulldog.TampilkanRincian();
System.out.println("");
rottweiler.TampilkanRincian();
System.out.println("");
golden.TampilkanRincian();
System.out.println("");
reptil.TampilkanRincian();
System.out.println("");
buaya.TampilkanRincian();
System.out.println("");
cicak.TampilkanRincian();
System.out.println("");
ular.TampilkanRincian();
System.out.println("");
kobra.TampilkanRincian();
System.out.println("");
phyton.TampilkanRincian();
System.out.println("");
}
}
Jika sudah, lakukan proses compile dan make, sehingga terbentuk
file .class. Di Geany dapat dilakukan dengan klik menu Build >
Compile atau tekan F8. Lakukan hingga proses compile sukses (lihat
keterangan di bagian bawahnya).
Kemudian jalankan dengan klik menu Build > Execute atau tekan
F5.
Sekian Tutorial kali ini, semoga dapat bermanfaat. See you later... :D
Sumber