A. Pengertian OOP (Object Oriented Programming)
OOP
(Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi
kepada objek. Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan program
dengan cara mengikuti model yang telah ada di kehidupan sehari-hari. Jadi
setiap bagian dari suatu permasalahan adalah objek, nah objek itu sendiri
merupakan gabungan dari beberapa objek yang lebih kecil lagi. Saya ambil contoh
Pesawat, Pesawat adalah sebuah objek. Pesawat itu sendiri terbentuk dari
beberapa objek yang lebih kecil lagi seperti mesin, roda, baling-baling, kursi,
dll. Pesawat sebagai objek yang terbentuk dari objek-objek yang lebih kecil saling berhubungan, berinteraksi,
berkomunikasi dan saling mengirim
pesan kepada objek-objek yang lainnya. Begitu juga dengan program, sebuah objek yang besar dibentuk dari beberapa
objek yang lebih kecil, objek-objek itu saling berkomunikasi, dan saling
berkirim pesan kepada objek yang lain.
B.
Konsep
OOP (Object Oriented Programming)
1. Kelas Abstrak (Class
Abstraksi)
2. Enkapsulasi
(encapsulation)
3. Pewarisan
(Inheritance)
4. Polimorfisme
(polymorphism)
1. 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).
2. 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.
3. Pewarisan
(Inheritance)
·
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.
4. 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.
C. Karakteristik OOP (Object Oriented Programming)
·
Semua adalah
objek.
·
Komputasi dilakukan dengan komunikasi antar objek. Setiap objek berkomunikasi dengan objek yang lain
melalui pengiriman dan penerimaan pesan.
·
Sebuah pesan
merupakan permintaan atas sekumpulan aksi dengan semua argumen
yang diperlukan untuk menyelesaikan suatu tugas tertentu.
·
Setiap objek
memiliki memori sendiri, yang dapat terdiri dari objek-objek lainnya.
·
Setiap objek
adalah wakil atau representasi dari suatu kelas. Sebuah kelas dapat
mewakili sekelompok objek yang sama.
·
Kelas merupakan
kumpulan tingkah laku yang berkaitan dengan suatu objek. Jadi, semua
objek yang merupakan wakil dari kelas yang sama dapat melakukan aksi
yang sama pula.
·
Kelas-kelas
diorganisasikan ke dalam struktur pohon yang berakar tunggal, yang
dinamakan dengan jenjang pewarisan (inheritance hierarchy).
·
Setiap objek pada
umumnya memiliki tiga sifat, yaitu keadaan, operasi dan identitas objek.
·
Operasi merupakan
tindakan yang dapat dilakukan oleh sebuah objek.
·
Keadaan objek
merupakan koleksi dari seluruh informasi yang dimiliki oleh objek pada
suatu saat.
·
Informasi yang terkandung pada
objek tersebut pada akhirnya memberikan identitas khusus
yang membedakan suatu objek dengan objek lainnya.
Contoh
Program
class
Kendaraan{
int posisi1;
int kecepatan;
int posisi2;
int pergerakan;
int kecepatan;
int posisi2;
int pergerakan;
int getPosisi1(){
return posisi1;
}
return posisi1;
}
void setPosisi1(int
theposisi1){
posisi1 = theposisi1;
}
posisi1 = theposisi1;
}
int getKecepatan(){
return kecepatan;
}
return kecepatan;
}
void setKecepatan(int
thekecepatan){
kecepatan = thekecepatan;
}
kecepatan = thekecepatan;
}
posisi2 bergerak(){
int jarak;
int waktu;
int waktu;
posisi2 = getKecepatan *
waktu;
}
}
}
}
class Mobil extends
Kendaraan{
}
}
class
KendaraanTestDrive{
Mobil avanza = new Mobil;
avanza.setPosisi1(30);
avanza.setKecepatan(45);
avanza.bergerak();
}
Mobil avanza = new Mobil;
avanza.setPosisi1(30);
avanza.setKecepatan(45);
avanza.bergerak();
}
Tidak ada komentar:
Posting Komentar
Berkomentarlah yang baik
Tidak ada unsur SARA, Pornografi, Ejekan,dsb
Salam Blogger...!!