Konsep Dasar OOP (Object Oriented Programming) pada Java
KONSEP DASAR OOP
PADA JAVA
Apa sih OOP?
1. 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.
2. Pengertian
Objek (Object)
Setiap
objek memiliki dua karakteristik yaitu Attribute (State) dan Behavior.Attribute (State)
merupakan identitas atau informasi objek itu sendiri atau disebut juga
sebagai variable, sedangkan Behavior adalah tingkah laku atau
apa yang dapat dilakukan oleh objek itu atau disebut juga sebagai method.
Sebagai contoh Attribute (State) dari pesawat adalah nama pesawat, tipe, warna, tahun produksi, roda, dll. Sedangkan Behavior dari pesawat adalah cara menghidupkan mesin, cara menerbangkan pesawat (take off), cara menurunkan pesawat (landing), dll.
Contoh :
- Titik
Titik merupakan sebuah objek yang terdiri dari posisi x dan posisi y
- Persegipanjang
Persegipanjang merupakan objek yang mempunyai panjang dan lebar
Sebagai contoh Attribute (State) dari pesawat adalah nama pesawat, tipe, warna, tahun produksi, roda, dll. Sedangkan Behavior dari pesawat adalah cara menghidupkan mesin, cara menerbangkan pesawat (take off), cara menurunkan pesawat (landing), dll.
Contoh :
- Titik
Titik merupakan sebuah objek yang terdiri dari posisi x dan posisi y
- Persegipanjang
Persegipanjang merupakan objek yang mempunyai panjang dan lebar
3. Pengertian
Kelas (Class)
Kelas
merupakan cetakan atau blueprint atau prototype, hasil dari
cetakan itu disebut objek. Contoh pesawat Boeing 737 dibuat dengan rancangan
yang sama, rancangan pesawat ini disebut kelas. Hasil rancangan itu menjadi
pesawat Boeing 737 yang disebut objek. Pesawat-pesawat hasil rancangan tadi
bisa memiliki warna, nama yang berbeda-beda tergantung perusahaan
penerbangannya. Disini jelas bahwa objek memiliki sifat independen. Objek
adalah instance dari kelas, satu kelas bisa memiliki beberapa objek.
4. Pengertian Instan
(Instance)
Kelas
yang telah terdefinisi dapat dijalankan (run-time) dalam bentuk instan di
memori. Contoh :
PersegiPanjang
pp = new PersegiPanjang();
Maksud
dari perintah di atas adalah sebagai berikut :
·
Instan pp merupakan sebuah objek kelas
PersegiPanjang dimana pp dibentuk oleh konstruktor Persegipanjang();
·
Konstruktor (Constructor) merupakan sebuah
method dimana nama method tersebut sama dengan nama kelas. Konstruktor tidak
mengembalikan nilai tetapi dapat dilewati atau diberikan parameter.
·
Instan pp berjalan pada memory komputer.
5. Pengertian Method
Method atau fungsi atau operasi atau behaviour merupakan perintah-perintah prosedural yang ditempatkan pada kelas untuk mendapat hasil dari perintah-perintah tersebut.
Method atau fungsi atau operasi atau behaviour merupakan perintah-perintah prosedural yang ditempatkan pada kelas untuk mendapat hasil dari perintah-perintah tersebut.
6. Pengiriman
Pesan (Message Passing)
Setiap
objek dapat menerima atau mengirimkan pesan. Pesan-pesan tersebut bukan hanya
berbentuk primitif variable (integer, double, dll), tetapi pesan-pesan tersebut
dapat berupa objek lainnya.
Contoh
:
pp.setPanjang(10);
Maksud perintah diatas adalah sebagai berikut :
pp.setPanjang(10);
Maksud perintah diatas adalah sebagai berikut :
pp
diberikan nilai panjan sebesar 10
APA KARAKTERISTIK OOP??
-
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.
APA SAJA KONSEP-KONSEP OOP PADA
JAVA?
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. Contoh penggunaannya antara lain :
·
Private
Variabel atau method hanya dapat diakses oleh objek itu saja.
Variabel atau method hanya dapat diakses oleh objek itu saja.
·
Public
Variabel atau method dapat diakses oleh objek itu sendiri dan objek lainnya
Variabel atau method dapat diakses oleh objek itu sendiri dan objek lainnya
·
Protected
Variabel dan method dapat diakses oleh objek itu sendiri dan turunannya.
Variabel dan method dapat diakses oleh objek itu sendiri dan turunannya.
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.
Contoh :
PersegiPanjang pp = new PersegiPanjang
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.
Contoh Program
Sederhana:
Semoga
artikel ini bermanfaat bagi pembaca, kritik dan saran sangat dibutuhkan demi
memperbaiki kekurangan pada pembahasan konsep OOP ini.
Daftar
Referensi :
Komentar
Posting Komentar