Polimorfisme
Setelah mengetahui konsep override, mungkin sebagian dari Anda ada yang bertanya, “Apa sebenarnya kegunaan dari proses override?” Jawabannya sederhana.
Proses Override dibentuk agar Java dapat mendukung konsep polimorfisme.
Polimorfisme adalah kemampuan suatu objek untuk mengungkapkan banyak hal melalui satu cara yang sama. Polimorfisme mengizinkan kelas induk untuk mendefinisikan sebuah method general (bersifat umum) untuk semua kelas turunanya, dan selanjutnya kelas-kelas turunan dapat memperbaharui implementasi dari method tersebut secara lebih spesifik sesuai dengan karakteristiknya masing-masing.
Contoh listing program :
// mendefinisikan kelas induk
class Penyanyi {
public void bernyanyi ( ) {
System.out.println(“Karakteristik nadanya” + “belum didefinisikan”);
}
}
// mendefinisikan kelas-kelas turunan dari kelas Penyanyi
class PenyanyiJazz extends Penyanyi {
// melakukan override terhadap method bernyanyi ( )
public void bernyanyi ( ) {
System.out.println(“Bernyanyi dengan irama Jazz”);
}
}
class PenyanyiPop extends Penyanyi {
public void bernyanyi ( ) {
System.out.println(“Bernyanyi dengan irama Pop”);
}
}
class PenyanyiDangdut extends Penyanyi {
public void bernyanyi ( ) {
System.out.println(“Bernyanyi dengan irama Dangdut”);
}
}
class ContohPolimorfisme {
// melakukan override terhadap method bernyanyi ( )
public static void main (String[] args) {
Penyanyi p;
PenyanyiJazz musmujiono = new PenyanyiJazz ( );
PenyanyiPop audi = new PenyanyiPop ( );
PenyanyiDangdut inul = new PenyanyiDangdut ( );
// p mengacu pada objek PenyanyiJazz
p = musmujiono;
// akan memanggil method pada kelas PenyanyiJazz
p.bernyanyi ( );
// p mengacu pada objek PenyanyiPop
p = audi;
// akan memanggil method pada kelas PenyanyiPop
p.bernyanyi ( );
// p mengacu pada objek PenyanyiDangdut
p = inul;
// akan memanggil method pada kelas PenyanyiDangdut
p.bernyanyi ( );
}
}
Kita mendeklarasikan variable refrensi ke tipe Penyanyi dengan nama p. Sampai di sini kita belum mengetahui apakah p merupakan penyanyi jazz, penyanyi pop, ataukah penyanyi dangdut. Namun pada saat p mengacu ke objek dari kelas PenyanyiJazz, kemudian kita memanggil method bernyanyi( ) melalui referensi tersebut, maka method yang akan dieksekusi adalah method bernyanyi( ) yang terdapat pada kelas PenyanyiJazz. Ini artinya, method yang akan dipanggil oleh p akan tergantung dari objek yang sedang ditunjuk. Method yang akan dipanggil pun akan disesuaikan dengan objek yang ada. Hal inilah dinamakan Polimorfisme
Kunjungan perdana sob, nice share..
ReplyDeleteKunjungi blog saya juga ya tentang contoh program polimorfisme di :
http://top-ilmu.blogspot.com/2012/11/contoh-program-java-polimorfisme.html
mksih
This comment has been removed by a blog administrator.
ReplyDelete