Uraian Materi Kegiatan Belajar 16 :Polimorphisme a. Tujuan Pembelajaran
PEMROGRAMAN BERORIENTASI OBJEK
172 | P a g e
Baris nomor 14 -16 adalah deklarasi metoda cetakObjek yang mempunyai satu parameter dengan tipe kelas Object. Kelas Object merupakan akar dari
semua kelas di Java. Langsung maupun tidak langsung, semua kelas di Java merupakan turunan dari kelas Object. Anda dapat memanggil atau
menggunakan metoda cetakObjek dengan argumen berupa obyek yang dibuat dari kelas turunan superclass Object.
Ketika metoda cetakObjek dipanggil baris nomor 8 – 11, argumen obyek
akan diminta. obyek sebagai argumen metoda dapat berupa obyek yang merupakan kelas turunan dari kelas Object yaitu kelas BangunDatar, kelas
PersegiPanjang maupun kelas Balok. Masing-masing kelas turunan mendeklarasikan ulang metoda toString yang mempunyai implementasi
berbeda. Java Virtual Machine JVM akan menentukan secara dinamis implementasi metode toString yang akan digunakan saat program dijalankan.
Kemampuan menentukan secara dinamis ini disebut dengan dynamic binding.
Dari gambaran program di atas, apabila parameter sebuah metoda adalah tipe superclass, maka argumen metoda yang diberikan dapat berupa tipe dari
subclassnya. Kemampuan
seperti inilah
yang dimaksud
dengan polymorphism. Dari gambaran tersebut, dapat didefinisikan kembali bahwa
polymorphism adalah kemampuan untuk menghasilkan sesuatu yang berbeda dengan cara yang sama. Pemberian obyek dari subclass ke obyek
dari superclass dapat dilakukan tanpa perlu melakukan konversi.