Polimorfisme KP-8
PROFESIONAL
PAKET KEAHLIAN REKAYASA PERANGKAT LUNAK
KELOMPOK KOMPETENSI C
SMK
2
INDIKATOR
3
SKENARIO
Penguatan – 15’
Diskusi kelompok-45’
Praktikum -
360’
Ceramah-20’
Pengantar
– 10’
4
10 jp
Polimorfisme
5
Keuntungan Menggunakan Polimorfisme
Dapat menggunakan kelas-kelas yang kita buat (sebagai super
kelas) dan membuat kelas kelas baru berdasar superkelas tersebut
dengan karakteristik yang lebih khusus dari behaviour umum yang
dimiliki superkelas.
6
Aktivitas Pembelajaran 2-1
Class Diagram contoh Overriding
Bentuk
+titik : int
+gambar() : void
+hapus() : void
SegiEmpat
Lingkaran
-panjang : int
+radius : int -lebar : int
+gambar() : void +gambar() : void
+hapus() : void +hapus() : void
Elips
+gambar() : void
+hapus() : void
7
Aktivitas Pembelajaran 1
Analisalah keluaran dari kode program berikut
8
Latihan / Tugas 1
Sebuah kelas induk dengan nama Penyanyi, yang akan diturunkan lagi menjadi kelas
penyanyi dangdut, penyanyi pop.Sebagai contoh, ada kelas A yang diturunkan
menjadi kelas B,C, dan D.
Dengan konsep Polimorfisme, anda dapat menjalankan method – method yang
terdapat pada kelas B,C, dan D hanya dari objek yang diinstansiasi dengan kelas A.
Polimorfisme memungkinkan anda mengenali kesamaam diantara kelas yang berbeda.
Pendeklarasian variable referensi ke tipe Penyanyi dengan nama p. Sampai disini,
kita belum mengetahui apakah p merupakan penyanyi jazz, penyanyi pop, ataukah
penyanyi dangdut. Namun, pada saat p mengacu ke objek dari kelas
PenyanyiJazz, kemudian kita memanggil method bernyanyi() memalui referensi
tersebut, maka method yang akan di eksekusi adalah method bernyanyi() yang
terdapat pada kelas PenyanyiJazz. Ini artinya, method yang akan dipanggil oleh p
akan tergantung dari abjek yang sedang ditunjuk atau diacu oleh p begitu pula
apabila p sedang menunjuk ke objek dari kelas PenyanyiPop maupun
PenyanyiDangdut, method yang di panggil pun akan disesuaikan dengan objek yang
ada.
9
Rangkuman
Polimorpisme merupakan salah satu konsep penting dalam
object oriented programming (OOP) khusunya di bahasa
Java setelah abstraction dan inheritance.
10