Konsep OOP Java and Contoh
Konsep OOP Java and Contoh
Burung itu ibarat objek yang punya nama, mata, kaki, sayap, warna, jenis. Burung juga dapat
terbang, berkicau dan berjalan. Mata, kaki sayap dan warna dalam dunia pemrograman disebut
juga atribut atau properties. Sedangkan aktifitasnya yaitu terbang, berkicau dan berjalan dalam
dunia pemrograman disebut sebagai method.
Class adalah cetakan, template, prototype,tempat dari object, sedangkan object adalah isi dari
kelas. Satu kelas dapat mempunyai object lebih dari satu atau banyak. Contoh sederhananya
seperti berikut : satu cetakan bias menghasilkan banyak kue.
Dari contoh diatas bisa diambil pengerian Attribute adalah Berbagai variable yang mengitari
class, dengan nilai datanya bisa ditentukan di object. nama, warna, sayap, dan jenis adalah
atribute dari class Burung. Method adalah implementasi dari bagaimana aktifitas / bekerjanya
sebuah class. terbang dan tidur adalah method atau behaviour dari class Burung
A. Encapsulation
Dalam OOP Encapsulation di wujudkan dalam bentuk “class”. Seperti yang telah dijalaskan
sebelumnya dalam sebuah class terdapat property dan method yang memiliki hak akses
tertentu terhadap environment/lingkungan-nya, hak akses ini biasa di sebut Access Modifier,
access modifier terdiri dari private, protected, dan public.
• Private
Memberikan hak akses hanya kepada anggota class tersebut untuk menggunakan dan/atau
mengubah nilai dari property atau method tersebut.
• Protected
Memberikan hak akses kepada anggota class nya dan anggota class hasil inheritance
(penurunan sifat) dari class tersebut.
• Public
Memberikan hak akses kepada property dan method agar dapat digunakan diluar class
tersebut.
// Setelah itu kita buat New Class lagi dengan nama IsiData
public class IsiData {
public static void main(String[] args) {
Siswa IT = new Siswa();
IT.nama = “Mirna”;
IT.nrp = “0320110013″;
IT.Info();
}
}
B. Inheritance
Inheritance adalah pewarisan yang artinya sebuah class dapat mewarisi atribut dan metho dari
class lain. untuk mendeklarasikan suatu class sebagai subclass dilakukan dengan cara
menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama
parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa kita ingin
melakukan perluasan class.
Contoh Programnya :
C. Polymorism
Suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki
obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang
sama sesuai dengan sifat masing-masing obyek.
Polymorism dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu
method, yang berasal dari parent class (super class) dimana object tersebut diturunkan,
sehingga memiliki kelakuan yang berbeda.
Nim : 0320110013
Hallo, saya Mahasiswa yg cantik n baik
Nama : Mirna Puji Rahayu
C:\>
Terlihat bahwa disini kita mengoverride method printNama(), dengan menambahkan beberapa
teks tambahan, sehingga method printNama(), pada class BeautyfullMahasiswa, memiliki
perilaku yang berbeda dengan class Mahasiswa.
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.
a. Apa sih 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
d. Method
Method atau fungsi atau operasi atau behaviour merupakan perintah-perintah prosedural yang
ditempatkan pada kelas untuk mendapat hasil dari perintah-perintah tersebut.
e. 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 diberikan nilai panjan sebesar 10
KONSEP-KONSEP OOP PADA JAVA
1. Kelas Abstrak (Class Abstraksi)
2. Enkapsulasi (encapsulation)
3. Pewarisan (Inheritance)
4. Polimorfisme (polymorphism)
Penjelasan :
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.
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.
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
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.
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.
Operasimerupakan 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 SEDERHANA :
Semoga artikel ini bermanfaat bagi pembaca, kritik dan saran sangat dibutuhkan demi
memperbaiki kekurangan pada pembahasan konsep OOP kali ini.