Kamis, 19 April 2012

INHERITANCE DAN POLIMORFISME PADA JAVA

Nama                            : Muhammad Aulia Desri Nurrachman     (59410201)
Rekan Kerja                 :  Muhammad Tri Windu P          (54410833)
Kelas                            : 2IA13



Pada dasarnya kita sebagai manusia sudah terbiasa untuk melihat objek yang berada di sekitar kita tersusun secara hierarki berdasarkan class-nya masing-masing. Dari sini kemudian timbul suatu konsep tentang pewarisan yang merupakan suatu proses dimana suatu class diturunkan dari class lainnya sehingga ia mendapatkkan ciri atau sifat dari class tersebut.
Dari hirarki di atas dapat dilihat bahwa, semakin ke bawah, class akan semakin bersifat spesifik. Misalnya, sebuah Class mamalia memiliki seluruh sifat yang dimiliki oleh binatang, demikian halnya juga anjing, kucing dan monyet memiliki seluruh sifat yang diturunkan dari class mamalia. Dengan konsep ini, karakteristik yang dimiliki oleh class binatang cukup didefinisikan dalam class binatang saja. Class mamalia tidak perlu mendefinisikan ulang apa yang telah dimiliki oleh class binatang, karena sebagai class turunannya, ia akan mendapatkan karakteristik dari class binatang secara otomatis. Demikian juga dengan class anjing, kucing dan monyet, hanya perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya masing-masing. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia diturunkan.Penurunan sifat tersebut dalam Bahasa Pemrograman Java disebut dengan Inheritance yaitu satu dalam Pilar Dasar OOP (Object Oriented Programing), yang dalam implementasinya merupakan sebuah hubungan “adalah bagian dari” atau “is a relationship” object yang diinherit (diturunkan).Latar belakang diperlukannya suatu inheritance dalam pemrograman java adalah untuk menghindari duplikasi object baik itu field, variable maupun methode yang sebenarnya merupakan object yang bisa diturunkan dari hanya sebuah class. Jadi inheritance bukan sebuah Class yang di inherit oleh sebuah Literial, tapi lebih menunjukkan ke hubungan antar object itu sendiri.Sedangkan suatu kemampuan dari sebuah object untuk membolehkan mengambil beberapa bentuk yang berbeda agar tidak terjadi duplikasi object kita kenal sebagai polymorphism.Antara penurununan sifat (inheritance) maupun polymorphism merupakan konsep yang memungkinkan digunakannya suatu interface yang sama untuk memerintah objek agar melakukan aksi atau tindakan yang mungkin secara prinsip sama namun secara proses berbeda. Dalam konsep yang lebih umum sering kali polymorphism disebut dalam istilah tersebut


Contoh Programnya :

Membuat Class Mobil :
class Kendaraan {
public void Mobil (){
System.out.println("Type Mobil :");
}
}

Membuat Class Turunan dari Jazz, yang merupakan turunan dari class Mobil :

public class Jazz extends Mobil {
public void Type(){
System.out.println("Honda jazz");
}
}

Membuat Class Turnana dari CRV, yang merupakan turunan dari class Mobil :

public class CRV extends Mobil {
public void Type (){
System.out.println("Honda CRV");
}
}

Membuat Class Turnana dari City, yang merupakan turunan dari class Mobil :

public class City extends Mobil {
public void Type(){
System.out.println("Honda City");
}
}

Lalu membuat class TypeMobil untuk menjalankan semua class-class yang telah dibuat :

public class TypeMobil {
public static void main(String[] args){
Mobil mobil = new Mobil();
Jazz jazz = new Jazz();
CRV crv = new CRV();
City city = new City();

mobil.Type();

mobil = jazz;
mobil.Type();

mobil = crv;
mobil.Type();

mobil = city;
mobil.Type();
}
}

Outputnya :

1 komentar: