Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain. Dua hal yang mendasar dalam enkapsulasi yakni :
• Information hiding.
• Interface to access data.
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.
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.
Contoh Program :
//program belajar.java
class belajar{
public String x ="Pintar";
private String y = "Java";
}
//program Pintar.java
public class Pintar{
public static void main(String[]args){
belajar panggil = new belajar();
System.out.println("Panggil X : "+panggil.x);
System.out.println("Panggil Y : "+panggil.y);
}}
LOGIKA PROGRAM
public String x ="Pintar";
private String y = "Java";
merupakan method yang nantinya dapat dipanggil kembali.
belajar panggil = new belajar();
untuk mengakses method dari kelas belajar.
panggil.x
pemanggilan method x
panggil.y
pemanggilan method y
Pada saat program Pintar.java di run, maka akan terjadi error karna pada saat memanggil kelas belajar, terdapat method yang bersifat private (private String y = "Java";) jadi pada saat y dipanggil (System.out.println("Panggil Y : "+panggil.y);) program error kecuali method pada program belajar.java diubah dari private menjadi public.
--------------------------------------------------------------------------------------------------------------
NPM : 52410844
KELAS : 2IA14
with Firda Chaerani (52410794)
BLOG LINK
referensi :
http://littlebro-note.blogspot.com/2008/10/java-enkapsulasi.html
http://setyonugroho09.wordpress.com/2010/02/17/konsep-enkapsulasiencapsulation-pada-object-oriented-programming-dengan-java/
*dengan beberapa perbaikan dalam program
Tidak ada komentar:
Posting Komentar