OOP adalah sebuah cara pemrogramman yang berorientasi pada objek, objek dimaksud merupakan kesatuan dari atribut dan behavior, sehingga jalannya program tidak secara prosedural atau terstruktur tetapi lebih pada interaksi antar objek yang ada.
Didalam Object Oriented Programming (OOP) terdapat konsep-konsep antara lain:
- Object, yaitu kesatuan antara atribut dan behavior yang dimodelkan menjadi suatu benda. Dalam penggunaannya atribut akan menjadi sebuah variable dari obyek dan behavior akan menjadi sebuah method.
- Class, yaitu suatu kerangka atau cetakan dimana objek-objek akan dibuat, sehingga setiap objek yang dibuat dalam satu kelas walaupun akan mempunyai keunikan sendiri-sendiri (independent) tetap akan mempunyai kesamaan bentuk.
- Interface, yaitu digunakan untuk menentukan apa yang harus dilakukan suatu class, tetapi tidak menentukan bagaimana cara melakukannya.
Contoh program:
public class MesinCuci {
int kapasitas; //Ini disebut variable yang merupakan representasi atribut -
int daya; //atribut dari suatu objek
void printMesinCuci(){
System.out.println(“Kapasitas (Liter):”+kapasitas);
System.out.println(“Daya (Watt):”+daya);
}
}
Karakteristik OOP antara lain:
- Abtraction, yaitu cara pandang untuk menyederhanakan sistem yang rumit menjadi kumpulan fungsi-fungsi yang sederhana, misalnya mesin cuci adalah kumpulan dari fungsi pencucian, fungsi pembilasan dan fungsi pengeringan.
- Modularity, yaitu sebuah object dapat dikembangkan secara independent terpisah dari object –ob ject yang lain.
- Encapsulation, yaitu suatu cara untuk menyembunyikan proses dalam suatu system sehingga terlindungi dari campur tangan pihak luar yang bias menganggu jalannya proses dalam suatu system. Misalnya dalam mesin cuci user hanya boleh mengatur waktu pencucian, tetapi tidak diperbolehkan mengatur kecepatan motor pengaduk, karena dapat beresiko merusak baju.
- Inheritance, yaitu suatu pendefinisian object dengan merujuk atau mewarisi object yang sudah ada tanpa harus mendefinisikan ulang atribut dan method-nya secara mandiri.
- Polymorphism, yaitu suatu object yang sama dapat mempunyai method sesuai dengan ketentuan class atau superclass-nya.
