Pewarisan (Inheritance)
Sebagai manusia kita sebenarnya terbiasa untuk melihat objek
yang berada disekitar kita tersusun secara hierarki berdasarkan class-nya
masing-masing. Dari sini kemudian timbul suatu konsep tentang pewarisan yang
merupakan suatu proses dimana suatu class diturunkan dari class lainnya
sehingga ia mendapatkkan cirri atau sifat dari class tersebut.
Perhatikan
contoh hirarki berikut ini:
Dari hirarki diatas dapat dilihat bahwa, semakin kebawah, class
akan semakin bersifat spesifik. Class mamalia memiliki seluruh sifat yang
dimiliki oleh binatang, demikian halnya juga Anjing, kucing dan Monyet memiliki
seluruh sifat yang diturunkan dari class mamalia. Dengan konsep ini,
karakteristik yang dimiliki oleh class binatang cukup didefinisikan
didefinisikan dalam class binatang saja. Class mamalia tidak perlu
mendefinisikan ulang apa yang telah dimiliki oleh class binatang, karena
sebagai class turunannya, ia akan mendapatkan karakteristik dari class binatang
secara otomatis. Demikian juga dengan class anjing, kucing dan monyet, hanya
perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya
masing-masing. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka
hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari
class darimana ia diturunkan.
Polymorphism
Polymorphism berasal dari bahasa Yunani yang berarti banyak
bentuk. Dalam PBO, konsep ini memungkinkan digunakannya suatu interface yang
sama untuk memerintah objek agar melakukan aksi atau tindakan yang mungkin
secara prinsip sama namun secara proses berbeda. Dalam konsep yang lebih umum
sering kali polymorphism disebut dalam istilah satu interface banyak aksi.
Contoh yang konkrit dalam
dunia nyata yaitu mobil. Mobil yang ada dipasaran terdiri atas berbagai tipe
dan berbagai merk, namun semuanya memiliki interface kemudi yang sama, seperti:
stir, tongkat transmisi, pedal gas dan rem. Jika seseorang dapat mengemudikan
satu jenis mobil saja dari satu merk tertentu, maka orang itu akan dapat
mengemudikan hamper semua jenis mobil yang ada, karena semua mobil tersebut
menggunakan interface yang sama. Harus diperhatikan disini bahwa interface yang
sama tidak berarti cara kerjanya juga sama. Missal pedal gas, jika ditekan maka
kecepatan mobil akan meningkat, tapi bagaiman proses peningkatan kecepatan ini
dapat berbeda-beda untuk setiap jenis mobil.

0 comments:
Post a Comment