Access Modifier
Access modifier terdiri dari public, protected dan private.
public
Modifier public menspesifikasikan variabel dan metode itu dapat diakses oleh siapapun, baik didalam atu diluar kelas. Hal ini berarti anggota public tampak dan dapat diakses oleh sembarang objek lain.
protected
Modifier protected menspesifikasikan anggota hanya dapat diakses metode-metode di kelas itu dan subkelas-subkelas turunan kelas itu. Ini berarti anggota protected hanya terbatas pada kelas itu dan subkelas-subkelasnya.
private
Modifier private adalah paling terbatas; menspesifikasikan anggota kelas hanya dapat diakses oleh kelas dimana anggota itu di definisikan. Ini berarti tidak ada kelas lain yang dapat mengakses anggota private, sekalipun subkelas-nya.
Contoh programnya :
public class Alat_tulis {
private String info = "Informasi Alat Tulis";
protected String nama;
protected String merek;
String nama(String nm)
{
nama = nm;
return nama;
}
}
public class pensil extends Alat_tulis {
protected String harga;
public String pensil(String hrg)
{
harga = hrg;
return harga;
}
public static void main(String[] args)
{
pensil pl = new pensil();
pl.nama = "Pensil";
pl.merek = "Standart";
pl.harga = "5000";
System.out.println(pl.info); // Untuk menampilkan variabel info di class Alat_tulis //
System.out.println("Nama "+ pl.nama);
System.out.println("Merek "+ pl.merek);
System.out.println("Harga "+ pl.harga);
}
}
Dari contoh program tersebut, jika kita jalankan maka akan terjadi ERROR dikarenakan variabel info di kelas Alat_tulis tidak dapat diakses oleh kelas pensil, karena variabel tersebut menggunakan access modifier private.
Berikut gambar hasil running programnya :
Tetapi jika pada class Alat_tulis kita ganti code programnya menjadi :
public class Alat_tulis {
public String info = "Informasi Alat Tulis"; // private diganti dengan public atau boleh juga dengan protected //
protected String nama;
protected String merek;
String nama(String nm)
{
nama = nm;
return nama;
}
}
Maka hasilnya akan seperti berikut :
makasih saya terbantu banget, simpel dan mudah di mengerti :D
BalasHapus