Kamis, 05 Januari 2017

Tipe Modifier dalam Java

Modifier adalah kata kunci yang ditambahkan pada definisi variabel untuk menentukan artinya. Berikut ini daftar modifier dalam bahasa pemrograman Java.

1.1 Modifier Akses
Java menyediakan beberapa modifier akses untuk mengatur level akses untuk kelas, variabel, method dan konstruktor.
Berikut ini empat level akses:
  • Dapat diakses oleh package, yang merupakan level akses default. Tidak memerlukan modifier.
  • Dapat diakses hanya oleh kelas (private).
  • Dapat diakses oleh semua (public).
  • Dapat diakses oleh package dan semua subkelas (protected).
Untuk menggunkan modifier, Anda menambahkan kata kunci pada difinisi kelas, method, atau variabel. Modifier berada di bagian awal statemen.
Berikut ini contohnya:

public class namaKelas
{
   //...
}
 private boolean penanda;
static final double minggu = 9.5;
protected static final int LEBARKOTAK = 42 ;

public static void main(String[] arguments)
{
   // isi method
}

Modifier Akses Private-Private
Method, variabel dan konstruktor yang dideklarasikan dengan kata kunci private hanya dapat diakses di dalam kelas tempat pendeklarasiannya.
Berikut ini contohnya:

public class Logger
{
  private String format;

  public String getFormat()
  {
    return this.format;
  }
  public void setFormat (String format)
  {
     this.format = format;
  }
}

Pada contoh di atas, variabel format dalam kelas Logger adalah private jadi kelas lain tidak dapat mengakses atau memodifikasi nilainya secara langsung. Agar variabel ini dapat diakses oleh semua, Dibuatkan dua method public yaitu getFormat() yang mengembalikan nilai format, dan setFormat(String) yang mengatur nilai format.

Modifier Akses Publik-Public
Sebuah kelas, method, konstruktor, interface dll yang dideklarasikan public dapat diakses oleh kelas-kelas lainnya.
Berikut ini contohnya:

public static void main (String[]) arguments)
{
   //...
}

Modifier Akses Protected-Protected
Variabel, method dan kostruktor yang dideklarasikan protected di dalam superclass dapat diakses hanya oleh subclass pada package yang berbeda atau kelas yang ada dalam package yang sama.
Berikut ini contoh kelas yang menggunakan protected untuk memungkinkan kelas turunannya melakukan override method openSpeaker():

class AudioPlayer
{
protected boolean openSpeaker (Speaker sp)
   {
     // implementasi
   }
}
class StreamingAudioPlayer
{
   boolean openSpeaker (Speaker sp)
   {
     // implementasi
   }
}

Pada contoh diatas, Jika Anda mendefinisikan method openSpeaker() sebagai private, maka method itu tidak dapat diakses oleh kelas lain selain AudioPlayer.
Jika Anda mendefinisikan sebagai public, maka dapat diakses oleh semua. Tapi tujuan dari program itu bahwa method tersebut hanya dapat diakses oleh subclass, sehingga menggunakan modifier protected.

Kontrol Akses dan Pewarisan
Berikut ini aturan untuk method yang diwariskan:
  • Method yang dideklarasikan public pada superclass juga harus public dalam semua subclass.
  • Method yang dideklarasikan protected pada superclass harus protected atau public dalam subclass;tidak boleh private.
  • method yang dideklarasikan tanpa kontrol akses (tanpa modifier) dapat dideklarasikan lebih private dalam subclass.
  • Method yang dideklarasikan private tidak diwariskan. Sehingga tidak ada aturannya.

1.2 Modifier Non Akses
Java menyediakan beberapa modifier non-akses.
  • Modifier staticuntuk mebuat kelas, method dan variabel.
  • Modifier final untuk menetapkan implementasi dari kelas, method dan variabel.
  • Modifier abstract untuk membuat kelas dan method abstract.
  • Modifier synchronized dan volatile, yang digunakan untuk thread.

Tidak ada komentar:

Posting Komentar