Sedikit lebih dalam Dengan Accessor dan Mutator

Da N Bo 16 Februari 2017

Sedikit lebih dalam Dengan Accessor dan Mutator

Pertanyaan yang bagus untuk yang pertama kali belajar java, atau yang sudah lama belajar tapi ingin tahu lebih dalam lagi dengan dunia java, Sebenarnya kalian sudah tahu tentanang Accessor dan Mutator, meskipun di bagian yang lain di dalam java.

Karena Accessor dan Mutator adalah nama lain dari konsep Enkapsulasi; yah, , , memang tidak bisa di samakan dengan konsep itu, namun kedua hal ini memiliki konsep yang sedikit sama dengan Enkapsulasi.

Acessor adalah sebuah konsep dimana ada sebuah method yang di gunakan untuk mengembalikan nilai dari field/variable yang memiliki hak akses private/protected.

Ini mirip dengan fungsi Enkapsulasi “Getter” yang mengembalikan sebuah nilai yang memilik hak akses private/protected.

private String name;

public String  getName(){
	return name; //ini adalah sebuah acessor
}

Selain mirip dengan konsep Getter, Accessor juga memiliki sedikit pembeda dengan Getter, ada beberapa hal yang tidak bisa di samakan dengan Getter namun memiliki konsep yang sama.

String input = "Input User";
String toUpper = input.toUpperCase(); //Ini adalah Accessor
System.out.println(input);
SYstem.out.println(toUpper);

//Output 
Input User
INPUT USER

Di sini kita bisa melihat bahwa ada sedikit perubahan dari variable input, input mendapatkan proses dari method toUpperCase(); dan method ini bisa di sebut sebagai sebuah method Accessor.

Kenapa bisa begitu, karena .toUpperCase(); mengembalikan sebuah nilai (return method), namun dia tidak merubah isi dari variable input, toUpperCase(); hanya merubah yang tadinya lower menjadi upper.

sedangkan jika toUpperCase adalah sebuah Mutator, dia akan merubah isi string yang ada di dalam variable input.

Umpama, yang tadinya “Input User” menjadi String baru “Output User”, atau yang tadinya “Nanas” menjadi “Apel” dan seterusnya, karena ketika hanya merubah bentuk output bukan datanya, maka method yang bersangkutan itu bisa di kategorikan sebagai sebuah Accessor.

Lalu Apa itu Mutator ? Kebalikan dari Accessor, mutator meimiliki sifat yang sangat berbeda dengan Acessor, karena mutator akan merubah data dari sebuah Field/Variable yang bersangkutan.

String input = "Hello";
System.out.println(input.Replace("H", "J")); //Ini adalah method Mutator

//Output 
Jello

Seperti kita lihat di atas, output dan input sudah menjadi string yang berbeda di tilik dari data yang di tampilkan, yang tadinya “Hello” menjadi “Jello”. Kita bisamengambil kesimpulan bahwa datanya sudah berbeda Dan ini lah yang membedakan antara Accessor dan Mutator.

Inti dari Mutator itu merubah data dari sebuah object, data sebelumnya itu berbeda dengan data yang mendapatkan proses dari Mutator method.

Hal ini juga mirip dengan konsep Setter, dimana ada sebuah method yang memiliki akses untuk merubah data dari variable/field yang memiliki hak akses private.

private int umur;

public vod setUmur(int umur){
	this.umur = umur; //Ini adalah Mutator
}

Itulah sedikit penjelasan dari saya tentang Apa itu Mutator dan Accessor, Semoga bermanfaat.