Encapsulation In Java Programming Using Netbeans

Encapsulation In Java Programming Using Netbeans

Enkapsulasi (encapsulation) adalah suatu cara/metode untuk menyembunyikan informasi yang terdapat didalam suatu class. Informasi yang dimaksud adalah properti dan method. Dengan enkapsulasi, pembatasan akses kepada properti dan method dapat dilakukan sehingga hanya properti dan method tertentu saja yang dapat diakses dari luar class. Dua hal yang mendasar dalam enkapsulasi yaitu information hiding dan interface to access data.

Properti dan method dapat diakses secara langsung menggunakan objek yang telah dibuat sebelumnya, hal ini dikarenakan akses kontrol yang diberikan kepada properti dan method tersebut adalah “public”. Dengan enkapsulasi, kita dapat menyembunyikan informasi properti dan method  dari suatu class dengan memberikan akses kontrol “private” ketika mendeklarasikannya diawal sehingga properti dan method tersebut tidak dapat diakses dari luar class. Proses inilah yang disebut dengan information hiding.

Jika telah melakukan information hiding terhadap properti dan method suatu class, bagaimana cara melakukan perubahan terhadap properti tersebut? Caranya adalah dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu properti tersebut. Proses ini dinamakan interface to access data.

Dalam enkapsulasi terdapat hak akses public, private, dan protected. Public memungkinkan semua class dapat mengakses suatu properti atau method yang terdapat pada class lain. Private hanya dapat diakses oleh class-nya sendiri. Sedangkan protected dapat diakses oleh class-nya sendiri dan turunannya serta class-class yang terdapat dalam satu package.

Sebagai contoh, jika hak akses public pada sebuah constructor diganti menjadi private maka program akan mengalami error. Private adalah level proteksi untuk sebuah objek dalam suatu class yang mendefinisikannya sehingga objek tidak dapat keluar dari class tersebut.

Dalam implementasinya dapatkah kita memberikan hak akses pada constructor? Constructor berfungsi untuk menginisialisasi objek dari suatu class. Constructor merupakan method yang memiliki nama sama dengan class-nya dan bersifat public. Constructor dapat menerima parameter namun tidak dapat mengembalikan nilai.

Untuk mencegah kesalahan ketika menjalankan program, constructor dapat diberikan hak akses protected atau public, atau juga dapat menerapkan interface to access data.

Berikut contoh sederhana penggunaan enkapsulasi menggunakan Netbeans IED 8.1.

  • Buat projek java application dengan nama Enkapsulasi. Ketika membuat projek, Netbeans akan membuatkan package dengan nama enkapsulasi yang didalamnya terdapat class dengan nama yang sama dengan nama projek yaitu Enkapsulasi.
  • Buat class baru didalam package enkapsulasi dengan nama Persegi.

Hirarki pada dock Projects akan terlihat seperti pada gambar dibawah ini.

Hirarki Projek Enkapsulasi Menggunakan Netbeans

Tambahkan code pada class Persegi.java.

Persegi.java


package enkapsulasi;

/**
*
* @author kutuonline
*/
public class Persegi {

/*-- information hiding --*/
private int panjang;
private int lebar;

public int getLebar() {
return lebar;
}

public void setLebar(int lebar) {
this.lebar = lebar;
}

public int getPanjang() {
return panjang;
}

public void setPanjang(int panjang) {
this.panjang = panjang;
}

/*-- constructor --*/
public Persegi(){
int p = 0;
int l = 0;
}

public int luas(int p, int l){
return p * l;
}

public int getLuas(){
return luas(panjang, lebar);
}

}

Selanjutnya menambahkan code pada main class yaitu Enkapsulasi.java.

Enkapsulasi.java


package enkapsulasi;

/**
*
* @author kutuonline
*/
public class Enkapsulasi {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Persegi p = new Persegi();
p.setPanjang(12);
p.setLebar(6);

System.out.println("Panjang: " + p.getPanjang());
System.out.println("Lebar: " + p.getLebar());
System.out.println("Luas persegi: " + p.getLuas());
}

}

Berikut hasil program setelah di run.

hasil Program Enkapsulasi Menggunakan Netbeans

Dengan adanya contoh program enkapsulasi sederhana diatas, semoga Anda dapat lebih memahami konsep enkapsulasi dalam pemrograman Java.

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s