Anda di halaman 1dari 4

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 programmerprogrammer 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:
1 /**
2 @Author Firman Hidayat
**/
3
4 public class ContohKelasPakaiGetterSetter {
5
private String nim;
private String nama;
6
protected String alamat;
7
protected String jurusan;
8
9
public String getNim() {
10
return nim;
11
}
12
public void setNim(String nim) {
13
this.nim = nim;
14
}
15
16
public String getNama() {
17
return nama;
}
18
19
public void setNama(String nama) {
20
this.nama = nama;
21
}
22
23
public String getAlamat() {
24
return alamat;

25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 }
41
42
43

}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
public String getJurusan() {
return jurusan;
}
public void setJurusan(String jurusan) {
this.jurusan = jurusan;
}

Ini contoh kelas yang memanggil kelas ContohKelasPakaiGetterSetter di atas:


1 /**
2 @Author Firman Hidayat
**/
3
4 public class KelasPemanggilGetterSetter {
5
public static void main(String[] buaya) {
// Mengeset nilai atribut objek-objek instance kelas
6
// ContohKelasPakaiGetterSetter
7
ContohKelasPakaiGetterSetter objekKelas_1 = new
8 ContohKelasPakaiGetterSetter();
9
objekKelas_1.setNim("AAA111");
1
objekKelas_1.setNama("PAK BEYE");
objekKelas_1.setAlamat("Cigondewah");
0
objekKelas_1.setJurusan("Ilmu Palak");
11
1
ContohKelasPakaiGetterSetter objekKelas_2 = new
2 ContohKelasPakaiGetterSetter();
1
objekKelas_2.setNim("BBB222");
objekKelas_2.setNama("ANI YUDO");
3
objekKelas_2.setAlamat("Cikawao");
1
objekKelas_2.setJurusan("Ilmu Pertanian");
4
1
// Mengambil nilai atribut dari objek-objek instanc kelas
5
// ContohKelasPakaiGetterSetter
1
String nim_1 = objekKelas_1.getNim();
String nama_1 = objekKelas_1.getNama();
6
String alamat_1 = objekKelas_1.getAlamat();
1
String jurusan_1 = objekKelas_1.getJurusan();
7

1
8
1
9
2
0
2
1
2
2
2
3 }
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
3
2
3
3
3
4
3
5
3
6
3
7
3
8
3
9
4
0

String
String
String
String

nim_2 = objekKelas_2.getNim();
nama_2 = objekKelas_2.getNama();
alamat_2 = objekKelas_2.getAlamat();
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);
}

4
1
Bila kelas KelasPemanggilGetterSetter ini dieksekusi, menghasilkan output seperti ini:
NIM

: AAA111

1Palak
2NIM : BBB222
Pertanian

NAMA

: PAK BEYE

ALAMAT

: Cigondewah

NAMA

: ANI YUDO

ALAMAT

: Cikawao

JURUSAN
JURUSAN

: Ilmu

: Ilmu

Coba kita tinjau kelas ContohKelasPakaiGetterSetter. Dalam kelas ini terdapat tiga buah atribut:
nim
>
nama
>
alamat
>
Jurusan > akses level: protected

akses
akses
akses

level:
level:
level:

private
private
protected

Kemudian terdapat method getter dan setter yang akses levelnya diset public.
public String getNim()
> ngambil nilai atribut nim
public String getNama()
> ngambil nilai atribut nama
public String getAlamat()
> ngambil nilai atribut alamat
public String getJurusan() > ngambil nilai atribut Jurusan
public void setNim(String nim)
> mengeset nilai atribut nim
public void setNama(String nama)
> mengeset nilai atribut nama
public void setAlamat(String alamat) > mengeset nilai atribut alamat
public 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();