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:
Mahasiswa P = new anakTI();
P.methodKU("Sarah");
Mahasiswa L= new anakTOI();
cewek.mothodKU("Dion");
Outputnya:
- Methodku dengan parameter dengan nilai Sarah di class anakTI telah dipanggil
- Methodku dengan parameter dengan nilai Dion di class anakTOI telah dipanggil
Masih terasa membingungkan. Prinsipnya hampir sama dengan interface, yaitu memaksa sub classnya untuk mengoverride method-methodnya. Polimorfisme juga bias dijabarkan sifat khusus dari JAVA dimana kita dapat secara otomatis memakai method yang tetap untuk semua objek tanpa memerhatikan asal dari objek sub class. Dan dengan polimorfisme kita dapat menggunakan objek dalam banyak operasi namun prosesnya bias jadi berbeda-beda
Contoh lain:
class hewan {public void suara (){System.out.println("Hewan bersuara :");}}
• Membuat kelas turunan kuda yang merupakan turunan dari class hewan :
public class kuda extends hewan {public void suara(){System.out.println("Kuda mengikik...");}}
• Membuat kelas turunan kucing yang merupakan turunan dari class hewan :
public class kucing extends hewan {public void suara (){System.out.println("Kucing mengeong...");}}
• Membuat kelas turunan ayam yang merupakan turunan dari class hewan :
public class ayam extends hewan {public void suara(){System.out.println("Ayam berkokok...");}}
• Membuat class suarahewan untuk mengetes class-class yang telah dibuat :
public class suarahewan {public static void main(String[] args){hewan HEWAN = new hewan();kuda KUDA = new kuda();kucing KUCING = new kucing();ayam AYAM = new ayam();
HEWAN.suara();
HEWAN = KUDA;HEWAN.suara();
HEWAN = KUCING;HEWAN.suara();
HEWAN = AYAM;HEWAN.suara();}}
0 komentar:
Posting Komentar
Anda bertanya, saya akan mencoba menjawabnya ~,~