Langsung ke konten utama

ACCESS MODIFIERS PADA JAVA PROGRAMMING

          Saat membuat, mengatur properties dan class methods, seorang programmer java ingin mengimplementasikan beberapa macam larangan untuk mengakses data. Sebagai contoh, jika beberapa atribut hanya dapat diubah dengan method tertentu untuk menyembunyikannya dari object lain pada class. Di JAVA, implementasi tersebut disebut dengan access modifiers.
          Terdapat 4 macam access modifiers di JAVA, yaitu : public, private, protected dan default. 3 tipe akses pertama tertulis secara ekplisit pada kode untuk mengindikasikan tipe akses, sedangkan yang keempat yang merupakan tipe default, tidak diperlukan penulisan keyword atas tipe.

1. Akses Default (Package Accessibility)
Tipe ini mensyaratkan bahwa hanya class dalam package yang sama yang memiliki hak akses terhadap variabel dan methods dalam class. Tidak terdapat keyword pada tipe ini. Sebagai contoh :

public class StudentRecord
{
       //akses dasar terhadap variabel
       int name;

       //akses dasar terhadap method
       String getName(){
       return name;
       }
}

Pada contoh diatas, variabel nama dan method getName() dapat diakses dari object lain selama object tersebut berada pada package yang sama dengan letak dari file StudentRecord.

2. Akses Public
Tipe ini mengizinkan seluruh class member untuk diakses baik dari dalam dan luar class. Object apapun yang memiliki interaksi pada class memiliki akses penuh terhadap member dari tipe ini. Sebagai contoh :

public class StudentRecord
{
       //akses dasar terhadap variabel
       public int name;

       //akses dasar terhadap metode
       public String getName(){
       return name;
       }
}

Dalam contoh ini, variabel name dan method getName() dapat diakses dari object lain.

3. Akses Protected
Tipe ini hanya mengizinkan class member untuk diakses oleh method dalam class tersebut dan elemen – elemen subclass. Sebagai contoh :

public class StudentRecord
{
       //akses pada variabel
       protected int name;

       //akses pada metode
       protected String getName(){
       return name;
       }
}
Pada contoh diatas, variabel name dan method getName() hanya dapat diakses oleh method internal class dan subclass dari class StudentRecord.

4. Akses Private
Tipe ini mengizinkan akses class hanya dapat diakses oleh class dimana tipe ini dibuat. Sebagai contoh :

public class StudentRecord
{
       //akses dasar terhadap variabel
       private int name;
       //akses dasar terhadap metode
       private String getName(){
       return name;
       }
}

Pada contoh di atas, variabel name dan method getName() hanya dapat diakses oleh method internal class tersebut.

Keterangan :
Instance variable dari class secara default akan bertipe private sehingga class tersebut hanya akan menyediakan accessor dan mutator methods terhadap variabel ini.

Semoga bermanfaat.. Good Luck..

Referensi :
Modul belajar JENI

Komentar

Postingan populer dari blog ini

Pengenalan Design Pattern di Java

Java merupakan pemrograman yang berorientasi objek dengan interface, abstract, dan class sebagai bentuk dasar dari kode. Seorang programmer java yang ingin mencapai level expert apakah cukup dengan mengetahui prinsip OOP (Object Oriented Programming) ? Jawabannya tidak. Karena ilmu yang harus dipahami selanjutnya adalah Design Pattern dalam membuat kode Java. Design Pattern adalah solusi umum (konteks) terhadap masalah yang sering muncul dalam aplikasi software. Berdasarkan pengertian tersebut, design pattern terdiri dari tiga elemen dasar, yaitu: Konteks: situasi dimana pattern diterapkan (dan biasanya hal ini berulang)Masalah: tujuan atau batasan yang akan dicapai oleh konteksSolusi: desain umum dari masalah yang akan diselesaikan dan ditentukan batasannya

10 Cara Menjadi Programmer yang Expert (Ahli)

Saran saya untuk menjadi programmer yang expert / ahli: Sering dan banyak membuat programMembuat kode program dengan prinsip efisien dan fleksibelMembuat kode program dengan referensi buku yang direkomendasikanSelalu bertanya dalam hati "Mengapa aku harus membuat kode seperti ini?"Bereksperimen dengan kode secara asal-asalanMencari guru/mentor yang lebih pahamMenjadi pembicara atau pengajar dari program yang dipahamiBerhenti coding bila sedang jenuhMenulis kode di bahasa pemrograman lainMenerima opini/masukan yang baik (membangun) dan menolak masukan yang buruk
Semoga bermanfaat guys :)