1. Abstraksi
Abstraksi adalah kemampuan
sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu
kemampuan untuk memfokus pada inti.
Setiap objek dalam sistem melayani sebagai
model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan
perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem,
tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau
metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk
mengembangkan sebuah pengabstrakan.
Contoh penerapan
Abstraction dapat dilihat dibawah ini :
class Televisi
{
int volume = 0;
void naikkanvolume(int
volume)
{
this.volume = this.volume +
volume;
System.out.println(“Volume
Televisi : ” + this.volume);
}
}
public class TelevisiBeraksi
{
public static void main
(String[] args)
{
Televisi televisiku = new
Televisi();
televisiku.naikkanvolume(5);
}
}
Dari contoh diatas, dapat
dilihat terjadinya interaksi antar objek didalam system Televisi, saya
mengambil contoh volume televisi. Dari public class TelevisiBeraksi
berinteraksi dengan class Televisi dengan mengirimkan pesan informasi yang
berupa parameter –> naikkanvolume(5)
2. Encapsulation
Encapsulation adalah
pembungkus, pembungkus disini dimaksudkan untuk menjaga suatu proses program
agar tidak dapat diakses secara sembarangan atau di intervensi oleh program
lain.
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.
Contoh Program Encapsulation
:
public class Siswa {
public String nama;
public String nrp;
public void Info() {
System.out.println(“Saya
adalah”);
System.out.println(“Nama ” +
nama);
System.out.println(“Nrp ” +
nrp);
}
}
// 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();
}
}
3. Polimorfisme
Polimorfisme adalah tidak
bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim
pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan
tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila
sebuah burung menerima pesan "gerak cepat", dia akan menggerakan
sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan
menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama,
namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme
karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek
yang berbeda selagi program berjalan, dan teks program yang sama dapat
memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan
yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai
polimorfisme melalui penggunaan fungsi kelas-pertama.
Contoh program java nya :
Simpan dengan nama
BeautyfullMahasiswa.java
public class
BeautyfullMahasiswa extends Mahasiswa{
public void printNama(){
System.out.println(“Hallo,
saya Mahasiswa yg cantik n baik”)
Super.printNama();
}
}
Simpan dengan nama Main.java
public class Main{
public static void
main(String[] args]) {
BeautyfullMahasiswa mhs =
new BeautyfullMahasiswa();
mhs.setNim(“0320110013”);
mhs.setNama(“Mirna Puji
Rahayu”);
mhs.printNim();
mhs.printNama();
}
}
Kemudian compile dan run.
C:\>javac
BeautyfullMahasiswa.java
C:\>javac Main.java
C:\>java Main
4. Inheritas
Inheritas adalah mengatur
polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan
diciptakan dengan jenis khusus dari objek yang sudah ada - objek-objek ini
dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi
ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.
Contoh Programnya :
public class Mamalia () {
System.out.println(“Ciri
umum mamalia adalah bernapas dengan paru-paru, ” +
“berkembang biak dengan cara
beranak”);
}
class () Paus extends
Mamalia () {
String x = “Ikan Paus”;
System.out.println(“Mamalia
yang Anda pilih adalah “+ x );
System.out.println(“Mamalia
ini berada di laut”);
System.out.println(“Paus
termasuk jenis mamalia terbesar”);
}
class Sapi () extends
Mamalia (){
String x = “Sapi”;
System.out.println(“Mamalia
yang Anda pilih adalah “+ x );
System.out.println(“Mamalia
ini berada di darat”);
System.out.println(“Sapi
termasuk jenis mamalia pemamah biak”);
}
Referensi: