Getter dan Setter pada Kelas Java
14 January 2014 by Firman Hidayat
Bila membuat kelas Java, biasakan attributnya diset dengan access level selain public, misalnya private atau protected. Alasannya kenapa? Secara pasti saya tidak tau, tapi programmer-programmer senior menyarankan demikian. Katanya sih salah satunya buat alasan security.
Okeh, deh, kita percaya saja sama para senior ini. Kita gunakan access level private atau protected untuk atribut. Nah, untuk mengakses atribut ini dibuatlah method getter dan setter. Method Setter digunakan untuk mengeset nilai atribut sedangkan method Getter digunakan untuk mengambil nilai atribut. Kedua method ini (Getter dan Setter) diset dengan acces level public.
Kalau nanti kita belajar JavaServer Faces (JSF) ataupun hibernate dan Java Persistence API (JPA), kita bakal sering menggunakan method getter dan setter ini. Di JSF getter dan setter adalah keharusan untuk mengakses atribut pada kelas backing bean. Demikian pula pada hibernate/JPA, kelas entity menggunakan method getter dan setter ini. Karena itu kuasai method getter dan setter ini, karena ini penting.
Ini contoh kelasnya, kelas ContohKelasPakaiGetterSetter:
1234567891011121314151617
/**@Author Firman Hidayat **/
public class ContohKelasPakaiGetterSetter { private String nim; private String nama; protected String alamat; protected String jurusan; public String getNim() { return nim; }
public void setNim(String nim) { this.nim = nim; }
public String getNama() { return nama; }
public void setNama(String nama) { this.nama = nama; }
public String getAlamat() { return alamat; }
1819202122232425262728293031323334353637383940
public void setAlamat(String alamat) { this.alamat = alamat; }
public String getJurusan() { return jurusan; }
public void setJurusan(String jurusan) { this.jurusan = jurusan; }
}
414243
Ini contoh kelas yang memanggil kelas ContohKelasPakaiGetterSetter di atas:
1234567891011121314151617181920212223
/**@Author Firman Hidayat **/
public class KelasPemanggilGetterSetter { public static void main(String[] buaya) { // Mengeset nilai atribut objek-objek instance kelas // ContohKelasPakaiGetterSetter ContohKelasPakaiGetterSetter objekKelas_1 = new ContohKelasPakaiGetterSetter(); objekKelas_1.setNim("AAA111"); objekKelas_1.setNama("PAK BEYE"); objekKelas_1.setAlamat("Cigondewah"); objekKelas_1.setJurusan("Ilmu Palak");
ContohKelasPakaiGetterSetter objekKelas_2 = new ContohKelasPakaiGetterSetter(); objekKelas_2.setNim("BBB222"); objekKelas_2.setNama("ANI YUDO"); objekKelas_2.setAlamat("Cikawao"); objekKelas_2.setJurusan("Ilmu Pertanian");
// Mengambil nilai atribut dari objek-objek instanc kelas // ContohKelasPakaiGetterSetter String nim_1 = objekKelas_1.getNim(); String nama_1 = objekKelas_1.getNama(); String alamat_1 = objekKelas_1.getAlamat(); String jurusan_1 = objekKelas_1.getJurusan();
String nim_2 = objekKelas_2.getNim(); String nama_2 = objekKelas_2.getNama(); String alamat_2 = objekKelas_2.getAlamat(); String jurusan_2 = objekKelas_2.getJurusan();
// Tampilkan output nilai atribut setiap objek System.out.println("NIM : " + nim_1 + "\tNAMA : " + nama_1 + "\tALAMAT : " + alamat_1 + "\tJURUSAN : " + jurusan_1); System.out.println("NIM : " + nim_2 + "\tNAMA : " + nama_2 + "\tALAMAT : " + alamat_2 + "\tJURUSAN : " + jurusan_2); }}
242526272829303132333435363738394041
Bila kelas KelasPemanggilGetterSetter ini dieksekusi, menghasilkan output seperti ini:
12
NIM : AAA111 NAMA : PAK BEYE ALAMAT : Cigondewah JURUSAN : Ilmu PalakNIM : BBB222 NAMA : ANI YUDO ALAMAT : Cikawao JURUSAN : Ilmu Pertanian
Coba kita tinjau kelas ContohKelasPakaiGetterSetter. Dalam kelas ini terdapat tiga buah atribut:
nim –> akses level: privatenama –> akses level: privatealamat –> akses level: protectedJurusan –> akses level: protected
Kemudian terdapat method getter dan setter yang akses levelnya diset public.
public String getNim() —> ngambil nilai atribut nimpublic String getNama() —> ngambil nilai atribut namapublic String getAlamat() —> ngambil nilai atribut alamatpublic String getJurusan() —> ngambil nilai atribut Jurusanpublic void setNim(String nim) —> mengeset nilai atribut nimpublic void setNama(String nama) —> mengeset nilai atribut namapublic void setAlamat(String alamat) —> mengeset nilai atribut alamatpublic void setJurusan(String jurusan) —> mengeset nilai atribut Jurusan
Sekarang kita perhatikan kelas KelasPemanggilGetterSetter. Kelas ini tidak secara langsung mengakses atribut pada kelas ContohKelasPakaiGetterSetter. Untuk mengaksesnya digunakan method getter dan setter yang sudah disediakan di kelas ContohKelasPakaiGetterSetter. Ini contohnya:
ContohKelasPakaiGetterSetter objekKelas_1 = new ContohKelasPakaiGetterSetter();objekKelas_1.setNim(“AAA111″);objekKelas_1.setNama(“PAK BEYE”);objekKelas_1.setAlamat(“Cigondewah”);objekKelas_1.setJurusan(“Ilmu Palak”);
Untuk mengambil nilai atribut digunakan method getter:
String nim_1 = objekKelas_1.getNim();String nama_1 = objekKelas_1.getNama();String alamat_1 = objekKelas_1.getAlamat();String jurusan_1 = objekKelas_1.getJurusan();
Top Related