"ORANG YANG TIDAK MEMBACA,PASTI TIDAK BANYAK TAU,MAKA BACALAH ISI BLOG SAYA WALAUPUN HANYA SEDIKIT"

Tuesday, May 14, 2013

ENKAPSULASI

1.Pengertian
Enkapsulasi adalah sebuah proses melakukan pemaketan pada sebuah data. Dengan enkapsulasi data menjadi memiliki identitas. Enkapsulasi terjadi ketika sebuah protokol yang berada pada lapisan yang lebih rendah menerima data dari protokol yang berada pada lapisan yang lebih tinggi dan meletakkan data ke format data yang dipahami oleh protokol tersebut.Enkapsulasi menyembunyikan informasi detail dari suatu class.
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.

Dua hal yang mendasar dalam enkapsulasi yakni :
a.Information hiding
            Sebelumnya kita dapat mengakses anggota class baik berupa atribut maupun method secara langsung dengan menggunakan objek yang telah kita buat. Hal ini dikarenakan akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut adalah 'public'. Kita dapat menyembunyikan informasi dari suatu class sehingga anggota class tersebut tidak dapat diakses dari luar, caranya adalah hanya dengan memberikan akses kontrol 'private' ketika mendeklarasikan atribut atau method. Proses ini disebut dengan information hiding.

 b.Interface to access data

            Jika kita telah melakukan information hiding terhadap suatu atribut pada suatu class, lalu bagaimana cara melakukan perubahan terhadap atribut yang kita sembunyikan tersebut, caranya adalah dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut. Enkapsulasi menunjuk pada prinsip dari menyembunyikan desain atau mengimplementasikan informasi yang tidak sesuai pada object yang ada. Menyembunyikan elemen dari penggunaan sebuah class dapat dilakukan dengan pembuatan anggota yang ingin Anda sembunyikan secara private.
Sedangkan proses penguraian paket menjadi sebuah datagram disebut dekapsulasi.Dekapsulasi merupakan kebalikan dari enkapsulasi. Enkapsulasi menjalankan proses pembungkusan paket data sementara dekapsulasi memproses atau membuka paket data tersebut. Prosesnya berbanding terbalik dengan enkapsulasi.
           
Enkapsulasi memiliki manfaat sebagai berikut:

-
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.
- Information Hiding
            Penyembunyian informasi yang tidak perlu diketahui objek lain. 

    2.Problem Dan Implementasi
Mencari gaji bersih,potongan gaji serta pajak gaji dalam jangka sebulan masa kerja.

    3/Diagram UML
Enkapsulasi
+ main (In args : String)


Penggajian
- gajipokok : double
-gajiSetelahPajak : double
- pajakgaji : double
+ gajiBersih : double
-potongan : double
+setGaji(gaji) : double
+ hitungGaji : void
+getGajipokok : double
+ getGajiBersih: double


      4.   Coding Program mencari gaji bersih,potongan gaji serta pajak gaji dalam jangka sebulan masa kerja.
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("Masukkan Gaji");//Untuk menampilkan dialog yang berfungsi untuk menginput sebuah nilai
     
        sg = Double.parseDouble(Nilai);
      
         pegawai.setGaji(sg);
         pegawai.hitungGaji();
         System.out.println("\nBesar Gaji Bersih : "+ pegawai.getGajiBersih());//menampilkan hasil gaji bersih

   }

}
 Ø  Class Penggajian
/*Kelas Penggajian*/
class Penggajian {
//Mendeklarasikan variabel-variabel internal kelas Penggajian.
 
    private double gajipokok, gajiSetelahPajak,pajakgaji;//data yang bertipe double
    public double gajiBersih; //data yang bertipe double
    private double potongan = 100000; //data yang bertipe double

//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("\n*********TOTAL GAJI PERBULAN********** ");
        System.out.println("\nBesar Pajak Gaji : "+ pajakgaji);//Untuk menampilkan hasil dari Besar Pajak Gaji
        System.out.println("\nBesar potongan Gaji : "+ potongan); );//Untuk menampilkan hasil dari Besar potongan Gaji

    }

//Method yang mengembalikan gaji Pokok (Gaji sebelum-
//ada pengurangan)
public double getGajipokok(){
        return gajipokok;

    }

//Method yang mengmbalikan besar gaji bersih
public double getGajiBersih(){
        return gajiBersih;
    }
}



5.  Tampilan Program mencari gaji bersih,potongan gaji serta pajak gaji dalam jangka sebulan masa kerja.




      6.      Penjelasan Tampilan Screenshot Program
Pada gambar tersebut, ditampilkan hasil dari gaji bersih perbulannya setelah dipotong dengan pajak gaji dan potongan gaji.Dengan menginputkan gaji di dialog yang muncul maka program diatas akan menunjukkan berapa gaji bersih perbulannya.Untuk mencetak hasil dari total gaji perbulan setelah dipotong dengan besar pajak gaji dan besar potongan gaji  digunakan rumus berikut :
-          Untuk pajak gaji : gajipokok - (0.1 * gajipokok)
-          Untuk potongan gaji : gajipokok*0.1
-          Untuk gaji bersih : Pajak - potongan

ADSENSE

Artikel Terkait

1 komentar: