Rabu, 10 April 2013

JAVA - Encapsulation

Tidak maksimal pemrograman kita jika tidak mengetahui dan tidak menerapkan konsep Encapsulation pada pemrograman java. Method yang ada dalam suatu objek tidak seluruhnya didefinisakan public, melainkan tergantung kebutuhan. Ada kalanya kita memerlukan method internal yang tidak dirancang untuk di-publish ke luar lingkungan objek.

Untuk property, seluruh property haruslah didefiniskan private, sekalipun property tersebut didesain untuk dikenal oleh lingkungan luar objek. Segala jenis pengaksesan terhadap property harus dilakukan melalui method. Nah, inilah yang disebut dengan encapsulation, yaitu kita membungkus property objek sedemikian rupa sehingga tidak bisa diakases secara langsung.

Encapsulation adalah salah satu konsep dari 4 konsep pokok OOP. Selain dari itu ada inheritance, polymorphism, dan terakhir abstraction.

Lebih jelasnya Encapsulation merupakan teknik untuk membuat sebuah class private dan pembatasan terhadap pemanggilan method secara bebas seperti public method. Jika sebuat method atau veriabel yang dideklarasikan private, maka method dan veriabel tersebut tidak bisa diakses oleh siapapu dari luar lingkaran seperti class. Hal ini merupan teknik dari encapsulatin

Dengan hal ini teknik encapsulation bisa melindungi data-data vital yang diharapkan untuk tidak diketahui secara langsung dan tidak bisa dirubah secara sembarangan. Data itu biasanya seperti data password saat login. Pengaksesan hanya bisa diakses alakadarnya sesuai aturan yang sudah diberikan programmer.

Keuntungan yang pasti dari konsep ini adalah kemampuan untuk merubah kode perencanaan tanpa membuaka atau membedah kode yang dibutuhkan. Teknik ini mempunyai sifat maintainability, flexibilitydan extensibility pada kode kita.

Kita coba lihat contohnya :


/* File name : EncapTest.java */
public class EncapTest{

   private String name;
   private String idNum;
   private int age;

   public int getAge(){
      return age;
   }

   public String getName(){
      return name;
   }

   public String getIdNum(){
      return idNum;
   }

   public void setAge( int newAge){
      age = newAge;
   }

   public void setName(String newName){
      name = newName;
   }

   public void setIdNum( String newId){
      idNum = newId;
   }
}

Method public dapat diakses diluar class. Biasanya ada method method pengubah (mutator) dan pengambil (aksesor). Yaitu untuk melakukan kegiatan pada variabel refence-nya. Seperti SetName dan GetName diatas.

Lihat veriabel encapsulation yang bisa diakses dibawah ini :


/* File name : RunEncap.java */
public class RunEncap{

   public static void main(String args[]){
      EncapTest encap = new EncapTest();
      encap.setName("James");
      encap.setAge(20);
      encap.setIdNum("12343ms");

      System.out.print("Name : " + encap.getName()+ 
                             " Age : "+ encap.getAge());
    }
}


Outputnya :


Name : James Age : 20


Keuntungan konsep Encapsulation :


  • Method dapat ditentukan apakah hanya bisa merubah atau melihatnya saja.
  • Seluruh class dikontrol penuh oleh method tersebut dengan konsep ini.
  • Pengguna tidak bisa mengetahui alur dalam proses pengolahan data.



Sekian dulu tutorial ini, kita lanjutkan tutorialnya dengan memahami modifier.
Jika ada yang tidak paham atau yang ingin ditambahkan, silahkan memberi komentar.
Terima kasih atas perhatiannya.


Tidak ada komentar:

Posting Komentar