Page 187 - PEMROGRAMAN BERORIENTASI OBJEK 11 GASAL
P. 187

PEMROGRAMAN BERORIENTASI OBJEK




                           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.


                        c.  Rangkuman
                           Polymorphism merupakan salah satu konsep penting dalam object oriented

                           programming  (OOP)  khusunya  di  bahasa  Java  setelah  abstraction  dan
                           inheritance.  Polymorphism  berarti  banyak  bentuk.Polymorphism  sering
                           dikaitkan  dengan  penggunaan  lebih  dari  satu  metoda  dengan  nama  sama.

                           Penggunaan metoda dengan nama sama dapat diterapkan dengan method
                           overloading  dan  method  overriding.  Pada  saat  obyek  yang  sudah  dibuat
                           tersebut  memanggil  overridden  method  pada  parent  class,  compiler  Java

                           akan  melakukan  invocation  (pemanggilan)  terhadap  overriding  method
                           pada  subclass  dimana  yang  seharusnya  dipanggil  adalah  overridden

                           method.




                                                                                            172 | Pa g e
   182   183   184   185   186   187   188   189   190   191   192