Penggunaan dan Perbedaan Modifier Pada Java

Penggunaan modifier berfungsi untuk melakukan enkapsulasi (membungkus data) pada objeck. Dengan menggunakan modifier kita dapat menentukan siapa saja yang boleh menggunakan atau mengakses member dari suatu objek.
Ada empat macam modifier yang dikenal oleh Java, yaitu private, protected, public dan tanpa modifier.
Class Modifier
Bentuk penggunaan modifier pada class:
modifier class NamaClass{
 …
 …
}
Modifier Keterangan
(default) Class visible atau dapat digunakan hanya pada package yang sama
public Class visible terhadap semua package yang berbeda – beda
final Class tidak dapat diturunkan lagi / extends
Contoh penggunaan:
public class Manusia{
....
....
}
Method Modifier
Bentuk penggunaan method modifier:
modifier tipe-data namaMethod(parameter){
  …
  …
}
Berikut ini adalah daftar modifier yang dapat digunakan pada method.
Modifier Keterangan
(default) Method visible atau dapat digunakan hanya pada package yang sama
public Method visible pada semua package
private Method visible hanya di dalam class itu sendiri
protected Method visible didalam package dan sub classnya
static Lihat sub bab sebelumnya
final Method tidak dapat diubah / dioverride pada subclass (dibahas pada bab selanjutnya)
abstract Method harus dioverride / didefinisikan pada subclassnya (dibahas pada bab selanjutnya)
Contoh penggunaan:
public class Manusia{
  private String nama;
  private String jenkel;

  public void setNama(String nama){
   this.nama=nama;
  }
  public void setJenkel(String jenkel){
   this.jenkel=jenkel;
  }
  public void cetak(){
   System.out.println("Nama : "+nama);
   System.out.println("Jenis Kelamin : "+jenkel);
  }
}

public class DemoManusia{
 public static void main(String args[]){
  Manusia m = new Manusia();
  m.setNama("Zamzam");
  m.setJenkel("Laki-laki");
  m.cetak();
 }
}