View
105
Download
4
Category
Preview:
DESCRIPTION
KONSEP OOP. INHERITANCE (PEWARISAN) Encapsulation (enkapsulasi) Polymorphism (polimorfisme). Inheritance (Pewarisan) -1-. Dalam pohon hirarki inheritance, sebuah subclass mewujudkan abstraksi yang lebih spesifik dari superclassnya: subclass = superclass + (fitur-fitur baru) - PowerPoint PPT Presentation
Citation preview
KONSEP OOP
INHERITANCE (PEWARISAN)ENCAPSULATION (ENKAPSULASI)
POLYMORPHISM (POLIMORFISME)
Inheritance (Pewarisan) -1-
• Dalam pohon hirarki inheritance, sebuah subclass mewujudkan abstraksi yang lebih spesifik dari superclassnya: subclass = superclass + (fitur-fitur baru)– Subclass dapat menambahkan fields dan methods baru– Subclass dapat mengambil alih (override) method milik
superclass dan mengubah implementasi method tersebut• Manfaat inheritance:– Pemanfaatan kembali (reuse) kelas– Menyediakan model yang bersifat generik (abstract class);
implementasi spesifiknya bisa dilakukan kemudian (mungkin oleh pemrogram yang berbeda)
Inheritance (Pewarisan) -2-
Contoh :Dulu mobil remote kontrol tanpa kabel hanya ada satu tombol untuk
maju mundur, sekarang bisa bergerak sesuai keinginan kita.
Dulu fungsi jam tangan hanya sebagai penunjuk waktu saja, sekarang fungsinya sudah bertambah, bisa menampilkan tanggal hingga kalender.
Sekarang contoh yang dimodifikasi. Jika dulu perseneling mobil hanya manual sekarang sudah ada yang otomatis.
Jadi, dengan inheriten semua perubahan itu gak ngerubah bulat-bulat objek yang ada, tetapi hanya menambah dan memodifikasi dengan mempertahankan objek (class) awalnya.
Enkapsulasi -1-
• Enkapsulasi menyembunyikan property dan behaviour object dari pihak luar (object yang lain) object lain melihat object ini sebagai “black box” saja
Enkapsulasi -2-public class SegiEmpat { int panjang; int lebar; string warna;
public SegiEmpat(string w, int p, int l) { panjang = p; lebar = l; warna = w; }
public setWarna (string w) { warna = w; }}
sPinkSegiEmpat sPink = new SegiEmpat(“pink”, 20,10);
setWarna(string w)
Pihak luar (object lain) melihat sPinksebagai sebuah “kotak hitam” yangtidak terlihat isinya, kecuali fields danmethods yang memang dideklarasikan secara publik
Object lain tidak bisa melihat apa yang dilakukan sPink secara internal
Enkapsulasi -3-• Intinya adalah kita tidak perlu mengetahui apa sih yang ada dalam objek itu (class),
yang kita butuhkan adalah apa kegunaan, bagaimana cara memakainya dan apa yang akan terjadi.
• Ilustrasinya adalah motor. Bagaimana cara menghidupkan motor? – Masukkan kunci, tekan tombol starter dan gas atau kalo tidak ada, pakai kick
starter.– Kita tidak perlu tahu apa yang terjadi sebenarnya waktu kita menekan starter
atau kick starter. Yang penting motor hidup dan bisa dijalankan. • Ilustrasi lainnya adalah remote control tanpa kabel pada mobil-mobilan.
– Kita tidak perduli kerja remote control itu yang sebenarnya, yang penting begitu dihidupkan dan dan stiknya digerakkan ke atas dia akan maju. Begitu digerakkan ke kanan, dia akan belok, dst.
• Contoh terakhir adalah jam tangan. – Waktu membeli jam tangan, kita hanya memilih tampilan dan kualitas yang
bagus, itu yang terpenting. Tidak peduli cara mesin rangkaian digital yang bekerja di dalam jam itu.
Polymorphism -1- Poly: banyak; morphism: bentuk sebuah fitur
(generik) bisa diimplementasikan dengan berbagai cara Polymorphism diimplementasikan dengan mekanisme
inheritance
hewan
anjing“menggonggong”
kucing“mengeong”
kuda“meringkik”
“bersuara”
Polymorphism -2-• Dengan satu baris perintah kita bisa menggunakannya
untuk berbagai keperluan, fungsi itu akan menyesuaikan sendiri ke pemanggilnya.
• Ilustrasinya adalah tombol play. Dimana-mana tombol play fungsinya sama, untuk menjalankan. Padahal beda cara kerja tombol play di vcd dan radio.
• Inti Polimorfisme adalah objek yang kita gunakan ini bisa berubah sesuai dengan kondisi yang terjadi. Jadi kita tidak perlu menulis kode program yang panjang.
Recommended