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.

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. PEMROGRAMAN BERORIENTASI OBJEK 173 | P a g e

d. Tugas

Tugas 1 Buatlah program untuk menampilkan beberapa jenis kendaraan Mobil, Kereta Api, Pesawat yang memiliki jenis bahan bakar yang berbeda pula. Gunakan prinsip polimorfisme serta tentukan super class dan sub class-nya.  Mengamati Listing Program dan Output Program 1. Menentukan nama Class 2. Menentukan variabel yang digunakan 3. Menentukan nama Method 4. Gambar Class Diagram 5. 6. Buatlah listing program Compile dan debug program  Bandingkan dan Simpulkan Bandingkan listing program dan output kelompok Anda dengan Kelompok lain. Berdasarkan hasil perbandingan tersebut hal penting apa yang harus dirumuskan secara bersama? Nama Class Method : Operasi : PEMROGRAMAN BERORIENTASI OBJEK 174 | P a g e No Output Program 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.

e. Test Formatif

Dalam test ini setiap andaharus membaca dengan cermat dan teliti setiap butir soal dibawah ini. Kemudian berdasarkan uraian materi diatas tulislah jawabannya pada lembar jawaban test formatif yang telah disediakan. 1. Apa itu polymorphisme ? 2. Jelaskan perbedaan antara overloading method dan overridding method