#04 ACCESS MODIFIER


Dalam pemrograman berorientasi objek (PBO), kita sering membuat kelas, atribut, dan method. Namun tidak semua bagian dari kelas boleh diakses sembarang tempat.

Karena itu Java menyediakan sistem pengaman yang disebut Access Modifier.

A. Pengertian Access Modifier

Access Modifier adalah pengatur tingkat akses terhadap atribut, method, atau class. Fungsinya adalah membatasi siapa saja yang boleh melihat atau menggunakan bagian tertentu dari program.

Analogi Umum:

Bayangkan sebuah rumah:

  • Ada area yang boleh dilihat semua orang
  • Ada kamar pribadi yang hanya pemilik yang boleh masuk
  • Ada area yang hanya keluarga boleh masuk

Java juga begitu: setiap variabel/method bisa diberi izin akses tertentu.

B. Jenis-Jenis Access Modifier

Java memiliki tiga access modifier utama:

Public
Private
Protected

1. Public

public berarti dapat diakses dari mana saja:

  • Kelas yang sama
  • Paket yang sama
  • Paket berbeda
  • Objek dari luar

Ini adalah level akses paling terbuka.

Contoh Penggunaan

public class Siswa {
    public String nama;     // bisa diakses dari kelas mana pun
    public void tampilkan() {
        System.out.println("Nama: " + nama);
    }
}
Objek dari luar boleh langsung memakai atribut/method yang public:
Siswa s1 = new Siswa();
s1.nama = "Budi";
s1.tampilkan();

Analogi public

Seperti taman kota.
Semua orang boleh masuk, melihat, dan menggunakannya.

2. private

private berarti hanya dapat diakses dari dalam kelas itu sendiri.
Tidak bisa dipanggil dari luar kelas.
Ini biasanya digunakan untuk:

  • data sensitif
  • keamanan data
  • mencegah modifikasi sembarangan

Contoh Penggunaan

public class Siswa {
    private int umur;  // tidak bisa diakses dari luar kelas

    private void rahasia() {
        System.out.println("Ini method rahasia");
    }
}
Pemanggilan seperti ini akan error:
Siswa s = new Siswa();
s.umur = 17;       // ❌ ERROR
s.rahasia();       // ❌ ERROR

Analogi private

Seperti kamar tidur pribadi di rumah.
Hanya pemilik yang boleh masuk.
Orang lain tidak boleh sembarang membuka pintu.

 C. Perbandingan Access Modifier (Tabel)

Access Modifier Dalam Kelas Satu Paket Subclass Luar Paket
public
protected
private

D. Studi Kasus Sederhana

Kasus:

Anda membuat kelas AkunBank.
Atribut saldo tidak boleh diubah sembarangan → gunakan private.
Method setor dan tarik harus bisa dipanggil → gunakan public.

Contoh Java

public class AkunBank {
    private int saldo;

    public AkunBank(int saldoAwal) {
        saldo = saldoAwal;
    }

    public void setor(int jumlah) {
        saldo += jumlah;
    }

    public void tarik(int jumlah) {
        if (jumlah <= saldo) {
            saldo -= jumlah;
        } else {
            System.out.println("Saldo tidak cukup!");
        }
    }

    public int getSaldo() {
        return saldo;
    }
}

Penjelasan:

  • saldo dibuat private agar aman
  • Akses saldo hanya melalui method public
  • Ini contoh encapsulation pada PBO

Posting Komentar

Lebih baru Lebih lama

Formulir Kontak