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. Tipe-tipe member dalam setiap bahasa Pemrograman Visual adalah:
1. Fields.
Merupakan konstanta atau variabel yang mengizinkan akses tipe data. Fields dapat didefi nisikan olehclass, structure, dan enumeration. Fields digunakan sebagai data yang bersifat read-only, atau
sering didefinisikan sebagai konstanta. Fields juga dapat berupa
variabel read-only yang nilainya didefinisikan kali pertama pada class
constructor dan tidak dapat diubah lagi.
2. Properties.
Property dapat didefi nisikan untuk class, structure, dan interface. Umumnya property dapat dibaca (readable) dan ditulis (writable), walaupun dapat juga diperlakukan read-only atau write-only.
3. Methods.
Merupakan function atau subrutin yang tersedia pada sebuah class,
structure, interface, atau delegate. Pada sebuah method terdapat
parameter atau argumen yang dapat dikirimkan by value atau by reference.
Bagi programer Visual Basic 6.0 sudah tentu tidak asing lagi dengan
parameter by value maupun by reference yang biasa digunakan dalam
pembuatan function/procedure. By value berarti perubahan nilai pada
variabel parameter yang dikirimkan hanya akan berlaku di dalam function,
sementara by reference berarti perubahan nilai pada variabel di dalam
function akan tetap berlaku pada saat function tersebut selesai
dieksekusi dan kembali pada pemanggil. Dengan menggunakan keyword ByVal
atau ByRef, Anda dapat menentukan bagaimana parameter dikirimkan.
4. Events.
Pada Visual Basic versi sebelumnya, Anda tentu telah mengenal event yang menimbulkan istilah event-driven programming.
Event merupakan sebuah function yang dipanggil untuk merespon
kejadian/event tertentu, seperti klik mouse, penekanan tombol keyboard,
perubahan nilai field pada database, dan lain-lain. Umumnya event
mengirimkan dua parameter, yaitu object yang mengindikasikan
sender/pengirim event, dan object yang menyediakan informasi pada event
tersebut.
Pada sebuah class, Anda dapat melakukan modifikasi pada method dengan cara overriding maupunoverloading.
Overriding berarti Anda mengubah implementasi dari sebuah method,
sementara overloading berarti menambahkan method baru dengan nama yang
sama, tetapi dengan pengenal yang berbeda. Overloading mengizinkan Anda
memiliki dua atau lebih method dengan nama yang sama. Dua method
tersebut akan muncul pada fasilitas IntelliSense sehingga pengguna dapat
memilih method yang diinginkan. Bagaimanapun, salah memilih method
dapat menyebabkan runtime-error, Anda dapat menghilangkan method yang tidak diinginkan untuk tampil dengan menggunakan keyword Shadows.
D. 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();
}
Sumber Referensi :
2. Jeni-dasarpemrogramanjava.pdf
3. Codenhead-javabasic.pdf
0 komentar:
Posting Komentar