Document 9652611
Download
Report
Transcript Document 9652611
Matakuliah : M0864/Programming I
Tahun
: 2009
Polymorphism
Pertemuan 9
Learning Outcomes
Pada akhir pertemuan ini, diharapkan
mahasiswa akan mampu:
– Mahasiswa dapat menerapkan konsep
penggunaan polymorphism pada GUI di
Java .
Bina Nusantara
Outline Materi
• Preview Polymorphism
• Abstract Class
• Abstract Method
Bina Nusantara
Preview Polymorphism
• Objek yang memiliki banyak bentuk (method).
• 1 fungsi dengan banyak implementasi.
• Mengunakan Abstract Method
menggunakan Abstract Class
dan
juga
Preview Polymorphism
•
Pada umumnya, ada 2 tipe polymorphism :
– Trivial Polymorphism : Overloading
– Pure Polymorphism : Overriding
•
Berdasarkan waktunya :
1. Static ( Compile Time ), dapat melalui :
Generic
Overload
2. Dynamic ( Run Time ) , dapat melalui :
Class
• Inheritance
• Abstract
Interface
–
Abstract Class
• Mendeklarasikan karakteristik yang umum dari subclass.
• Dideklarasi secara abstrak.
• Tidak dapat dibuat objeknya dengan operator new.
• Hanya digunakan sebagai superclass dari kelas-kelas
lainnya dan berupa bentuk abstrak.
• Dideklarasi dengan keyword abstract.
Abstract Class
• Sebuah template
dibawahnya.
atau
design
untuk
subclass
• Menyediakan fungsi yang abstrak juga.( abstract method
)
• Fungsi di override di subclass.
• Sebuah objek harus dapat mengimplementasikan semua
abstract method yang ada di abstract class.
Abstract Method
• Dummy Code Method atau Prototype Method.
• Dideklarasikan di dalam Abstract Class.
• Tidak ada implementasi.
• Tidak mempunyai isi koding didalam fungsinya.
• Diakhiri langsung dengan titik koma.
• Method yang harus di-override di subclass-nya.
• Dideklarasi dengan keyword abstract.
Abstract Method
Kelas turunan dari JPanel yang merupakan
design controller untuk form dan merupakan abstract class
karena memiliki 2 abstract method yang memiliki fungsi berbeda
(ada pada slide berikutnya)
Abstract Method
Lanjutan koding dari slide sebelumnya,
terdapat 2 fungsi abstrak yang namanya sama dan parameternya berberda (overloading)
Kedua fungsi abstrak (hitung) harus wajib di –override di turunannya
(subclass)
Untuk isi logika dari fungsi tersebut berada pada kelas turunannya
(subclass)
Abstract Method
•
Kelas turunannya dan memanggil objek yang dibuat.
Kedua fungsi hitung (Konversi) di Override pada kelas
Turunannya (DemoCalculate)
Referensi
• Introduction to Java Programming. 7ed. Liang. 2009. Chapter 10,
hal 369
• Java Software Solution. 5ed. Lewis & Loftus. 2007. Chapter 9, hal
511
• Polymophism
http://www.uweb.ucsb.edu/~cdecuir/Polymorphism.html
• Inheritance and polymorphism
http://home.cogeco.ca/~ve3ll/jatutor5.htm
• Polymorphism in Object Oriented Programming
http://en.wikipedia.org/wiki/Polymorphism_in_objectoriented_programming
Bina Nusantara