Sebelumnya kita telah belajar tentang Referensi this dan Overloading method, kali ini kita akan mengenal apa itu access modifier atau hak akses pada bahasa java.

Access Modifier
         Pada saat membuat, mengatur properties dan class methods, kita ingin untuk mengimplementasikan beberapa macam larangan untuk mengakses data. Sebagai contoh, ketika kita ingin beberapa atribut hanya dapat diubah hanya dengan method tertentu, tentu kita ingin menyembunyikannya dari object lain pada class. Dijava implementasi tersebut disebut dengan access modifier.
Access Modifier adalah hak akses yang diberikan pada sebuah Class, Method, Variable dengan tujuan untuk menjaga integritas dari data tersebut ketika ingin diakses object lain.

Di Java terdapat 4 macam access modifier yaitu :
1. Akses Public
         Tipe Public 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. tipe akses ini biasanya digunakan untuk Acsesor Method(get) dan Mutuator Method(set).
Contohnya :
public class student{
 public string nama;
 public string getNama(){
  return nama;
 }
}
2. Akses Protected
         Tipe ini hanya mengizinkan class member untuk diakses oleh method dalam class tersebut dan elemen-elemen subclass. Tipe ini biasa digunakan untuk mewariskan variable yang ada di superclass terhadap subclass.
Contohnya :
public class student{
 protected string nama;
 protected string getNama(){
  return nama;
 }
}

3. Akess Default(No Access Modifier)
         Tipe ini kita tidak perlu dituliskan pada method ataupun variable. Dengan hak akses ini method dan variable hanya dapat diakses dari class dalam package yang sama.
Contohnya :
public class student{
 string nama;
 string getNama(){
      return nama;
 }
}

4. Akses Private
          Tipe ini Mengizinkan pengaksesan class hanya dapat diakses oleh class dimana tipe ini dibuat.
Contohnya :
public class student{
 private string nama;
 private string getNama(){
  return nama;
 }
}