Pengertian dan Konsep Dasar OOP pada Java

Assalamu’alaikum wr.wb.

Kali ini kita akan belajar tentang bagaimana pemahaman dan juga pengertian dari konsep OOP yang terdapat pada pemrograman java.

Sebagai seorang programmer, memahami OOP adalah suatu kewajiban. Karena pada zaman sekarang ini, programmer dituntut untuk meminimalisir program dan membuat program tertata rapi, sekaligus membuat sebuah aplikasi dengan cepat dan bug seminimal mungkin. Masalah yang saya sebutkan tadi untuk mengatasinya, salah satunya adalah OOP. Dengan OOP kita tidak perlu membuat perintah yang berulang – ulang. Oke langsung saja. berikut ini merupakan penjelasan tentang OOP.

  • Pengertian OOP

OOP (Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi kepada objek. Tujuan dari OOP adalah untuk mempermudah pengembangan dalam program dengan cara mengikuti model yang telah ada dalam kehidupan sehari – hari. Artinya setiap bagian dari suatu masalah adalah objek. Dan objek tersebut merupakan bagian dari beberapa objek didalamnya.  Contohnya saya ibaratkan mobil. Mobil adalah objek. Dari mobil tersebut terdapat objek lagi seperti ban, mesin, spion, dll. Mobil adalah object, yang mana terdiri dari object – object lain. Dari pengertian oop dan contohnya yang saya berikan. Bisa diartikan bahwa oop merupakan object yang terdiri dari sekumpulan object kecil, yang mana object kecil tersebut sebagai pendukung dari object besar.

Pengertian diatas merupakan contoh oop dalam kehidupan sehari – hari. Sedangkan arti oop yang sebenarnya adalah pradigma pemrograman yang berorientasikan kepada object. semua data dan fungsi dalam pradigma ini dibungkus dalam sebuah Class. Jika dibandingkan dengan pemrograman terstruktur, setiap object dapan menerima pesan, memproses pesan, dan menerima data dari object lainnya. Artinya OOP adalah pemrograman yang saling mengirim data dari satu class ke class yang lain. Data tersebut nantinya akan disimpan didalam object dari suatu class, kemudian dikirimkan ke class lain. Begitulah kira – kira. Mungkin bisa kita sebut OOP dengan Oper – operan data.

  • Konsep Dasar OOP

Jika ingin mempelajari OOP java, tentu kita harus mengetahui terlebih dahulu mengenai konsep oop pada java. Konsep ini adalah dasar dari OOP. Berikut ini merupakan Konsep OOP pada java:

  1. Class = merupakan “blueprint” atau “cetakan” untuk menciptakan suatu  object. Class biasa dipergunakan untuk membungkus berbagai attribute dan method yang saling berhubungan menjadi sebuah group agar lebih terorganisir sebagai satu kesatuan. Contoh : Class Kendaraan, Class Bangunan, Class Handphone, dll
  2. Object = adalah instance dari class. Jika class secara umum merepresentasikan (template) sebuah object, sebuah instance adalah representasi nyata dari class itu sendiri.
  3. Abstraksi = Proses representasi data dan program dalam bentuk sama dengan pengertiannya (semantik) dengan menyembunyikan rincian atau detail implementasi.
  4. Encapsulation = Merupakan pembungkus, artinya membungkus class dan menjaga apa saja yang ada didalam class tersebut. Baik method ataupun atribut. Agar tidak bisa diakses oleh class lainnya.
  5. Polimorfisme = (Perbedaan Bentuk) kemampuan objek yang berbeda kelas dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama dan memutuskan method mana yang akan diterapkan kepada sebuah objek.
  6. Inheritance = Pewarisan. artinya sebuah class dapat menurunkan property dan method yang dimilikinya kepada class lain. Kemudian Inheritance sendiri mempunyai keyword yaitu keyword extends.
  7. Method = suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object. Metode menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat serta berbagai operasi yang dapat dilakukan objek sepanjang hidupnya.

Berikut ini merupakan contoh program dari konsep OOP :

  • Class

class
program diatas merupakan contoh program untuk mendeklarasikan Class. Nama class tersebut adalah Mobil. Didalam class Mobil terdapat atribut nama, jenis, warna, dan merk.
Selain itu, terdapat construktor pada class tersebut dengan parameter (nama, merk, jenis, warna). Lalu pada program this, disitulah nilai data dari parameter dikirim ke variabel dalam class mobil.
print_mobil merupakan method dalam class. Method tersebut berfungsi untuk menampilkan data dari variabel – variabel yang telah ditentukan.

  • Object

object.PNG
Kita bisa lihat warna, jenis, nama, dan merk merupakan object dari String. Sedangkan m merupakan object dari class Mobil. Object m disini berfungsi untuk memanggil tipe data dan class tersebut. Jika kita bandingkan dengan kehidupan sehari – hari, paijo jo. Paijo adalah nama orang, jo adalah objectnya. jadi ketika kita memanggil paijo, kita cukup panggil dengan jo.

  • Abstraksi

abstraksi.PNG
kita lihat program yang paling bawah. m = new Mobil(nama, jenis, warna, merk) itulah yang disebut abstraksi. artinya dalam program, abstraksi tersebut mendeklarasikan class Mobil didalam class jual mobil, Untuk memanggil class dengan abstraksi kita buat rumus object = new class(parameter).

  • Encapsulation

Untuk encapsulation, kita perlu mengubah class mobil menjadi seperti dibawah ini:

Capture
Pada program diatas, kita bisa lihat terdapat dua model program (getXX dan setXX). get sendiri berfungsi untuk mengambil data, sedangkan set berfungsi untuk menambah data.
Pada encapsulation, Diwujudkan dalam bentuk class, dan didalam class sendiri terdapat method yang memiliki hak akses tertentu terhadap enviroment/ lingkungkannya. Hak akses ini disebut Acces Modifier. Yang terdiri dari private, protected, dan public.

  1. private = Memberikan hak akses hanya kepada class tersebut.
  2. protected = Memberikan hak akses kepada anggota classnya dan turunannya.
  3. public = memberikan hak akses kepada property dan method agar dapat digunakan di luar class tersebut.

 

  • Polimorfisme

Polimorfisme2
kita lihat dari program diatas, Pada constructor, kita panggil class mobil dengan object m. lalu dibawahnya terdapat method – method seperti setNama, setJenis dll yang notabene berasal dari class mobil. itulah yang disebut polimorfisme dimana dalam suatu class, terdapat method 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.

  • Inheritance

Inheritance
Pada contoh program diatas, saya membuat class jual_mobil dengan turunan dari panggil_mobil. m.getnama() dll merupakan milih class mobil, namun telah dipanggil di class mobil, sehingga class jual_mobil bisa mengaksesnya tanpa perlu mendeklarasikan class mobil terlebih dahulu.

 

Demikian yang dapat saya sampaikan. Apabila ada kekurangan ataupun kelebihan, saya mohon maaf, Semoga bermanfaat.

Wassalamu’alaikum wr.wb.


Tinggalkan komentar