Enkapsulasi adalah pembungkus, pembungkus disini dimaksudkan untuk menjaga suatu proses program agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain. Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan program agar dapat diakses sewaktu-waktu, sekaligus menjaga program tersebut.
Dalam kehidupan sehari hari enkapsulasi dapat dimisalkan sebagai arus listrik pada generator, dan sistem perputaran generator untuk menghasilkan arus listrik. Kerja arus listrik tidak mempengaruhi kerja dari sistem perputaran generator, begitu pula sebaliknya. Karena didalam arus listrik tersebut, kita tidak perlu mengetahui bagaimana kinerja sistem perputaran generator, apakah generator berputar kebelakang atau ke depan atau bahkan serong. Begitu pula dalam sistem perputaran generator, kita tidak perlu tahu bagaimana arus listrik, apakah menyala atau tidak. Begitulah konsep kerja dari enkapsulasi, dia akan melindungi sebuah program dari akses ataupun intervensi dari program lain yang mempengaruhinya. Hal ini sangat menjaga keutuhan program yang telah dibuat dengan konsep dan rencana yang sudah ditentukan dari awal.
Dalam kehidupan sehari hari enkapsulasi dapat dimisalkan sebagai arus listrik pada generator, dan sistem perputaran generator untuk menghasilkan arus listrik. Kerja arus listrik tidak mempengaruhi kerja dari sistem perputaran generator, begitu pula sebaliknya. Karena didalam arus listrik tersebut, kita tidak perlu mengetahui bagaimana kinerja sistem perputaran generator, apakah generator berputar kebelakang atau ke depan atau bahkan serong. Begitu pula dalam sistem perputaran generator, kita tidak perlu tahu bagaimana arus listrik, apakah menyala atau tidak. Begitulah konsep kerja dari enkapsulasi, dia akan melindungi sebuah program dari akses ataupun intervensi dari program lain yang mempengaruhinya. Hal ini sangat menjaga keutuhan program yang telah dibuat dengan konsep dan rencana yang sudah ditentukan dari awal.
Manfaat enkapsulasi :
1. Modularitas
Source code dari sebuah class dapat dikelola secara independen dari source code class yang lain. Perubahan internal pada sebuah class tidak akan berpengaruh bagi class yang menggunakannya.
2. Information Hiding
Penyembunyian informasi yang tidak perlu diketahui objek lain.
Source code dari sebuah class dapat dikelola secara independen dari source code class yang lain. Perubahan internal pada sebuah class tidak akan berpengaruh bagi class yang menggunakannya.
2. Information Hiding
Penyembunyian informasi yang tidak perlu diketahui objek lain.
Contoh Program Enkapsulasi:
_____________________________________________________________
import java.*;
import java.io.*;
import javax.swing.*;
public class Enkapsulasi{
/*Main Method*/
public static void main (String[] args){
//Membuat dari kelas hitungGaji untuk suatu-
//pegawai, dan memanggil method-methodnya
Penggajian pegawai = new Penggajian();
double sg;
String Nilai;
Nilai = JOptionPane.showInputDialog("");
sg = Double.parseDouble(Nilai);
pegawai.setGaji(sg);
pegawai.hitungGaji();
System.out.println("\nBesar Gaji Bersih : "+ pegawai.getGajiBersih());
}
}
/*Kelas Penggajian*/
class Penggajian {
//Mendeklarasikan variabel-variabel internal kelas Penggajian.
private double gajipokok, gajiSetelahPajak,pajakgaji;
public double gajiBersih;
private double potongan = 100000;
//Method untuk mengeset variabel internal gaji pokok.
public void setGaji(double gaji){
gajipokok = gaji;
}
//Method untuk menghitung gaji bersih.
public void hitungGaji(){
gajiSetelahPajak = gajipokok - (0.1 * gajipokok);
pajakgaji = (gajipokok*0.1);
gajiBersih = gajiSetelahPajak - potongan;
System.out.println("\nBesar Pajak Gaji : "+ pajakgaji);
System.out.println("\nBesar potongan Gaji : "+ potongan);
}
//Method yang mengembalikan gaji Pokok (Gaji sebelum-
//ada pengurangan)
public double getGajipokok(){
return gajipokok;
}
//Method yang mengembalikan besar gaji bersih
public double getGajiBersih(){
return gajiBersih;
}
}
_____________________________________________________________
Maka output dari program diatas akan seperti gambar berikut
Kita akan menginput jumlah Gaji, contoh di atas kita memasukan 5 juta, maka akan keluar nilai pajak, potongan juga gaji bersih yang didapat.
No comments:
Post a Comment