Anda di halaman 1dari 5

Konsep Bahasa Pemrograman

Object Oriented Programming


I. Pengenalan
OOP (Object Oriented Programming) adalah suatu metode pemrograman yang
berorientasi kepada objek. Tujuan OOP adalah untuk mempermudah pengembangan
program dengan cara mengikuti model yang telah ada di kehidupan sehari - hari. Jadi
setiap bagian dari suatu permasalahan adalah objek, objek itu sendiri merupakan
gabungan dari beberapa objek yang lebih kecil lagi. Contoh mobil, mobil adalah sebuah
objek, mobil itu sendiri terbentuk dari beberapa objek yang lebih kecil lagi seperti
mesin, roda, spion, ban, dll. Mobil 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.
Class adalah suatu blueprint atau cetakan untuk menciptakan suatu instant
dari objek. Contoh: class orang, kendaraan, pohon, buah dll. Objek adalah instance dari
class, class secara umum merepresentasikan sebuah objek, sebuah instance adalah
representasi nyata dari class itu sendiri. Contoh: Dari class buah, dapat dibuat objek
mangga, pisang, apel dll. Method adalah suatu operasi berupa fungsi - fungsi yang dapat
dikerjakan oleh suatu objek. Method didefinisikan pada class akan tetapi dipanggil
melalui objek. Contoh: objek mangga terdapat method: ambilRasa, kupasKulit dll.
Salah satu bahasa pemrograman yang menerapkan OOP adalah Java. Ada beberapa
konsep OOP antara lain:
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)
Enkapsulasi merupakan 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)
1
Konsep Bahasa Pemrograman

Pewarisan merupakan suatu kelas baru dengan mewarisi sifat dari kelas lain
yang sudah ada.
Penurunan sifat ini bisa dilakukan secara bertingkat - tingkat, 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 kode - kode itu.

4. Polimorfisme (Polymorphism).
Polimorfisme merupakan kemampuan objek - objek 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, pendefinisian ulang suatu metode oleh subclass. Syarat
overriding yaitu nama metode, return type, dan parameter harus sama. Jika tidak
sama maka bukan dianggap sebagai overriding tetapi metode yang baru pada
subclass.
Method overloading, pendefinisian ulang suatu metode dalam class yang sama.
Syarat overloading yaitu nama metode dan tipe parameter harus berbeda dalam
class yang sama.

Karakteristik OOP (Object Oriented Programming) adalah sebagai berikut:


a. Semua adalah objek.
b. Komputasi dilakukan dengan komunikasi antar objek. Setiap objek berkomunikasi
dengan objek yang lain melalui pengiriman dan penerimaan pesan.
c. Sebuah pesan merupakan permintaan atas sekumpulan aksi dengan semua argumen
yang diperlukan untuk menyelesaikan suatu tugas tertentu.
d. Setiap objek memiliki memori sendiri, yang dapat terdiri dari objek - objek lainnya.
e. Setiap objek adalah wakil atau representasi dari suatu kelas. Sebuah kelas dapat
mewakili sekelompok objek yang sama.
f. 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.
g. Kelas - kelas diorganisasikan ke dalam struktur pohon yang berakar tunggal, yang
dinamakan dengan jenjang pewarisan (inheritance hierarchy).
h. Setiap objek pada umumnya memiliki tiga sifat, yaitu keadaan, operasi dan identitas
objek.
i. Operasi merupakan tindakan yang dapat dilakukan oleh sebuah objek.

2
Konsep Bahasa Pemrograman

j. Keadaan objek merupakan koleksi dari seluruh informasi yang dimiliki oleh objek
pada suatu saat.
k. Informasi yang terkandung pada objek tersebut pada akhirnya memberikan identitas
khusus yang membedakan suatu objek dengan objek lainnya.

Java diciptakan oleh James Gosling, resmi diperkenalkan tahun 1995. Java
merupakan bahasa pemrograman berorientasi obyek murni. Karakterik Java antara lain:
1. Sederhana
Bahasa pemrograman Java menggunakan sintaks mirip dengan C++ dengan
menghilangkan penggunaan pointer yang rumit dan multiple inheritance, sehingga
menarik banyak pengguna C++ untuk beralih ke Java.
2. Berorientasi objek
Semua aspek yang terdapat dalam java adalah objek. Hal ini sangat memudahkan
pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi
kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan
terorganisir.
3. Terdistribusi
Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya
libraries networking yang terintegrasi pada Java.
4. Portable atau Multiplatform
Source code maupun program Java dapat dengan mudah dibawa ke platform yang
berbeda - beda tanpa harus dikompilasi ulang.
5. Performance
Performance pada Java sering dikatakan kurang tinggi. Namun performance Java
dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan Inprise,
Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT).
6. Secure
Bahasa pemrograman untuk aplikasi internet dan terdistribusi, Java memiliki
beberapa mekanisme keamanan untuk menjaga aplikasi agar tidak digunakan untuk
merusak sistem komputer yang menjalankan aplikasi tersebut.
Untuk beragam aplikasi yang dibuat dengan bahasa programan Java, Java dibagi
dalam beberapa bagian:

Java 2 Standar Edition (J2SE), J2SE menyediakan lingkungan pengembangan yang


kaya fitur, stabil, aman, dan cross - platform. Edisi ini mendukung konektivitas
basis data, rancangan user interface, masukkan / keluaran (input / output), dan
pemrograman jaringan (network programming), dan termasuk sebagai paket - paket
dasar bahasa Java.
Java 2 Enterpise Edition (J2EE), J2EE menyediakan tempat untuk membangun dan
menjalankan multitier enterprise editions. J2EE berisi paket - paket di J2SE
ditambah paket - paket untuk mendukung pengembangan Enterprise JavaBeans,
Java Servlets, JavaServer Pages, XML, dan kendali transaksi yang fleksibel.
Java 2 Micro Edition (J2ME), J2ME selain menyedikan bahasa Java yang sama,
unggul dalam portabilitas (kemampuan dapat dijalankan dimanapun), safe network
delivery, seperti J2SE dan J2EE. Aplikasi - aplikasi dapat diskalakan (dimampukan)

3
Konsep Bahasa Pemrograman

agar dapat bekerja dengan J2SE dan J2EE. J2ME adalah untuk beragam consumer
electronic product, seperti pager, smart card, cell phone, handheld PDA, dan set -
top box.

II. Latihan
Buatlah sebuah program sederhana yang menampilkan biodata kalian, didalamnya berisi
nim, nama, fakultas, progdi, dan ipk.
Kode Program:

package kbp1;

/**
*
* @author User
*/
public class KBP1 {

public static void main(String[] args) {


int nim = 672012001;
String nama = "Asdos";
String fakultas = "FTI";
String progdi = "TI";
double ipk = 3.24;
System.out.println("NIM\t\t: " + nim + "\nNama\t\t: " + nama + "\nFakultas\t: " +
fakultas + "\nProgdi\t\t: " + progdi + "\nIPK\t\t: " + ipk);
}
}

4
Konsep Bahasa Pemrograman

III. Tugas
Buatlah sebuah program untuk menghitung nilai faktorial bilangan dengan input angka
dari user.
Code Program:

Anda mungkin juga menyukai