-->
Enkapsulasi (Pembungkusan Data, Modifier, Terusan Data)
4/ 5 stars - "Enkapsulasi (Pembungkusan Data, Modifier, Terusan Data)" Assalamau'alaikum wr.wb .. Nah Sekarang Saya akan membahas ihwal Enkapsulasi . yuk Simak ... Apaan sih maksudnya enkapsulasi da...

Enkapsulasi (Pembungkusan Data, Modifier, Terusan Data)



Assalamau'alaikum wr.wb ..


Nah Sekarang Saya akan membahas ihwal Enkapsulasi . yuk Simak ...


Apaan sih maksudnya enkapsulasi dalam pemrograman?
Konsep Enkapsulasi dalam pemrograman ialah pengkombinasian/pembungkusan antara data dan mekanisme ataupun fungsi (method) yang memanipulasinya ke dalam sebuah object pada bab yang terlindungi sehingga data-datanya tidak gampang diakses pribadi dari luar. Manfaat dari enkapsulasi ialah arahan sumber dari sebuah object sanggup dikelola secara independen dari arahan object yang lain. Selain itu, dengan enkapsulasi kita sanggup menyembunyikan informasi-informasi yang tidak perlu diketahui oleh object lain. Enkapsulasi merupakan salah satu karakteristik utama dalam konsep OOP.
Konsep ini memilih tingkat aksesibilitas dari masing-masing data dan method serta menyembunyikan detail implementasi dari luar yang dikenal dengan Information Hiding. Ada beberapa laba menerapkan prinsip enkapsulasi, yaitu:
1. Memiliki sifat bebas, sehingga sanggup dipakai pada bab manapun dari kegiatan tidak terkait pada bab tertentu program.
2. Memiliki sifat transparan, jikalau melaksanakan modifikasi maka perubahan akan dirasakan oleh bab kegiatan yang memakai modul tersebut.
3. Menghindari efek diluar perencanaan, dengan demikian akan mereduksi kemungkinan adanya hasil efek pemrosesan yang di luar perencanaan semula.
Dua hal yang fundamental dalam enkapsulasi yakni :
• Information hiding
Sebelumnya kita sanggup mengakses anggota class baik berupa atribut maupun method secara pribadi dengan memakai objek yang telah kita buat. Hal ini dikarenakan susukan kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut ialah 'public'. Kita sanggup menyembunyikan warta dari suatu class sehingga anggota class tersebut tidak sanggup diakses dari luar, caranya ialah hanya dengan memperlihatkan susukan kontrol 'private' saat mendeklarasikan atribut atau method. Proses ini disebut dengan information hiding.

• Interface to access data
Jika kita telah melaksanakan information hiding terhadap suatu atribut pada suatu class, kemudian bagaimana cara melaksanakan perubahan terhadap atribut yang kita sembunyikan tersebut, caranya ialah dengan menciptakan suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut.

              Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan kegiatan semoga sanggup diakses sewaktu-waktu, sekaligus menjaga kegiatan tersebut. Dalam kehidupan sehari hari enkapsulasi sanggup dimisalkan sebagai arus listrik pada generator, dan sistem perputaran generator untuk menghasilkan arus listrik. Kerja arus listrik tidak menghipnotis 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, ia akan melindungi sebuah kegiatan dari susukan ataupun intervensi dari kegiatan lain yang mempengaruhinya. Hal ini sangat menjaga keutuhan kegiatan yang telah dibentuk dengan konsep dan planning yang sudah ditentukan dari awal.

Contoh program:
class Anggota{  //kelas anggota berisi atribut yang mempunyai modifier sehingga kelas main mempunyai susukan pribadi ke atribut kelas anggota
 private String nama;  //private dipakai suppaya objek tidak diakses sembarangan
             private String hobby;
 public Anggota(String n, String hobby) {  //menginisialisasi isi dari atribut dalam kelas anggota
 this.nama = n;
 this.hobby = hobby;
             }
 public String tampilkanNama() {
 return nama;
 }
 public String tampilkanHobby() {
 return hobby;
 }
 public void usia() {
 System.out.println("Usia : 20");
 }
 public void JK() {
 System.out.println("Jenis Kelamin : Perempuan");
 }}

public class main{
             public static void main(String[] args) {
             System.out.println("======Biodata Anggota=====");
             Anggota Diny = new Anggota("Diny", "Bermain Keyboard");  //bentuk inisialisasinya, memanggil nama kelas Anggota dengan nama Diny diikuti dengan menjalankan method Anggota untuk mengisi variabel nama dan hobby
 System.out.println("Nama \t : " + Diny.tampilkanNama());
 System.out.println("Hobby \t : " + Diny.tampilkanHobby());  //perintah mencetak diikuti variabel yang telah dideklarasikan dan memanggilnya
 Diny.usia();
 Diny.JK();
 System.out.println();

 Anggota Dyas = new Anggota("Dyas", "Menyanyi");
 System.out.println("Nama \t : " + Dyas.tampilkanNama());
 System.out.println("Hobby \t : " + Dyas.tampilkanHobby());
 Dyas.usia();
 Dyas.JK();
 System.out.println();
 System.out.println("======Maacih yaaaa=====");
 }}  //untuk memanggil dan mencetak

Kalau mau lihat outputnya, di bawah ini yaa….

 Output :



Semoga Bermanfaat ..
#RPLWajibNgulik
Sumber : - http://budiwana.wordpress.com/2010/01/16/object-oriented-programming-sebagai-konsep-unggulan-dalam-membuat-program/
       -     https://mamankdzgn.blogspot.com//search?q=16/object-oriented-programming-sebagai-konsep-unggulan-dalam-membuat-program/">http://budiwana.wordpress.com/2010/01/16/object-oriented-programming-sebagai-konsep-unggulan-dalam-membuat-program/
       -     http://budiwana.wordpress.com/2010/01/16/object-oriented-programming-sebagai-konsep-unggulan-dalam-membuat-program/
       -     https://mamankdzgn.blogspot.com//search?q=16/object-oriented-programming-sebagai-konsep-unggulan-dalam-membuat-program/">http://budiwana.wordpress.com/2010/01/16/object-oriented-programming-sebagai-konsep-unggulan-dalam-membuat-program/
       -     "); if(r>0) {obj0.innerHTML=s.substr(0,r);obj1.innerHTML=s.substr(r+4);}