Rujuk Tutorial Inheritance kalau tak paham.
Kalau kita nak guna class KucingSiam, kita akan buat macam ni kan:
KucingSiam kucingsaya = new KucingSiam();
Selain tu, kita boleh jugak tulis macam ni:
Kucing kucingsaya = new KucingSiam();
So, apa guna tulis macam tu?
Ok, katakanlah kita nak simpan semua kucing tu dalam satu array.
Kalau kita buat array macam ni:
KucingSiam[] kucingsaya = new KucingSiam[2];
kucingsaya[0] = new KucingSiam();
kucingsaya[1] = new KucingParsi(); // yang ni akan bagi error
kita hanya boleh letak KucingSiam saje, KucingParsi tak boleh.
Jadi, kita buat macam ni:
Kucing[] kucingsaya = new Kucing[2];
kucingsaya[0] = new KucingSiam();
kucingsaya[1] = new KucingParsi();
Sekarang kita cuba test array tersebut guna loop, macam ni:
dan kita akan nampak, bila dia jumpa KucingSiam, dia akan guna method dalam class KucingSiam, bila jumpa KucingParsi, dia guna method dalam class KucingParsi.
Dia berubah-ubah.
Itulah yang dinamakan polymorphism.
POLY(banyak) MORPH(berubah-ubah)
Ingat Poligami, ingat Mighty Morphin Power Rangers.
Poligami - kawin banyak.
Power Rangers - bila diorang cakap "It's morphin time!", diorang pun bertukar jadi power rangers.
Sekian.