Konsep-Konsep OOP Pada Java
- Kelas Abstrak (Class Abstraksi)
- Enkapsulasi (Encapsulation)
- Pewarisan (Inheritance)
- Polimorfisme (Polymorphism)
Kelas Abstrak (Class Abstraksi)
- Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
- Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang digunakan untuk menciptakan objek.
- Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
- Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property)
Enkapsulasi (encapsulation)
- Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
- Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
- Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
- Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut. Contoh penggunaannya antara lain:
PrivatePewarisan (Inheritance)
Variabel atau method hanya dapat diakses oleh objek itu saja.
Public
Variabel atau method dapat diakses oleh objek itu sendiri dan objek lainnya
Protected
Variabel dan method dapat diakses oleh objek itu sendiri dan turunannya.
- Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
- Penurunan sifat ini bisa dilakukan secara bertingkattingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
- Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
- Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kodekode itu.
Polimorfisme (polymorphism)
- Polimorfisme merupakan kemampuan objekobjek yang berbeda kelas namun terkait dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama.
- Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.
- Method overriding.
- Method name overloading.
Contoh:
PersegiPanjang pp = new PersegiPanjang
Titik ttk = pp;
Maksud pada 2 baris perintah diatas adalah
- Instan pp merupakan objek kelas PersegiPanjang PersegiPanjang dimana pp dibentuk oleh konstruktor Persegipanjang();
- Instan ttk merupakan objek kelas Titik
- Instan ttk dibentuk dari instan pp yang merupakan turunan dari pp (Polimorphisme)
- Nilai instan ttk sama dengan instan pp
- Nilai instan pp yang dianggap pada instan ttk adalah x,y. Sedangkan panjang dan lebar diabaikan.
0 komentar:
Posting Komentar