Polimorfisme Dengan Proses Override
Proses override dibentuk agar Java dapat mendukung konsep polimorfisme. Sedangkan Polimorfisme itu sendiri adalah kemampuan suatu objek untuk mengungkap banyak hal melalui satu cara yang sama. Polimorfisme merupakan salah satu hal esensial dalam konsep pemrograman berorientasi objek karena alasan berikut : polimorfisme mengizinkan kelas induk untuk mendefinisikan sebuah method general (bersifat umum) untuk semua kelas turunannya, dan selanjutnya kelas-kelas turunan dapat memperbaharui impelemtasi dari method tersebut secara lebih spesifik sesuai dengan karakteristiknya masing-masing.
Untuk mempermudah dalam memahami konsep ini. Kita ambil contoh. Misalnya sebuah kelas induk dengan nama Penyanyi, yang akan diturunkan lagi menjadi kelas PenyanyiJazz, PenyanyiPop, PenyanyiDangdut. Pada saat kita memilih 5 orang penyanyi untuk menyanyikan suatu lagu, maka kelima penyanyi tersebut pasti akan menyanyi dengan karakteristiknya masing-masing. Artinya apabila dia adalah penyani jazz maka pola nada atau irama yang dia nyanyikan tentu akan kental dengan nuansa jazz. begitu pula apabila dia merupakan seorang penyanyi pop maupun dangdut, maka nadanya juga akan berirama pop atau dangdut. Berikut ini contoh implementasi kasus tersebut ke dalam kode program.
Kelas Penyanyi :
Kelas turunan Penyanyi Jazz :
Kelas turunan Penyanyi Pop :
Kelas turunan Penyanyi Dangdut :
Main Program Demo Polimorfisme:
Output Program :
Seperti yang
dilihat diatas, kita mendeklarasikan variabel aaaareferensi ke tipe Penyanyi
dengan nama p. Sampai disini, 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 atau diacu oleh p. Begitu pula
apabila p sedang menunjuk ke objek dari kelas PenyanyiPop maupun
PenyanyiDangdut, method yang dipanggil pun akan disesuaikan dengan objek yang
ada. Hal semacam inilah yang dinamakan polimorfisme. Artinya, cara yang
dilakukan sama, yaitu p.bernyanyi(), akan tetapi implementasinya
berbeda-beda sesuai dengan tipe objek yang sedang diacu. Penentuan objek mana
yang akan diacu dilakukan pada saar run-time sehingga proses ini dikenal
dengan istilah runtime polymorphism atau dynamic method dispatch (pengiriman
method secara otomatis).
Link kelompok :
http://francescandy.blogspot.com/ (Andy)
http://rakbar73.blogspot.com/ (Robbiyana Akbar)
http://rakbar73.blogspot.com/ (Robbiyana Akbar)
http://candrahwijaya.blogspot.com/ ( candra hadi wijaya)
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home