Sadurunge kita nyilem menyang konsep iki, sampeyan kudu ngerti kelas lan enkapsulasi ing Jawa .
Enkapsulasi ing Jawa
Encapsulation, minangka jeneng tabet, iku proses enclosing data lan cara minangka unit siji. Ing pemrograman berorientasi obyek , anggota data kelas digawe pribadi kanggo mbatesi akses langsung menyang dheweke. Dadi anggota data sing encapsulated ora bisa dijupuk utawa diowahi tanpa cara sing ditemtokake kanthi bener. Kanggo iki, kita nemtokake cara accessor lan mutator ing Jawa. Ayo padha nliti cara-cara kasebut kanthi rinci.Apa aksesoris lan mutator ing Jawa?
Aksesori
Jeneng metode accessor didorong dening tembung " akses " sing ngidini pangguna ngakses informasi pribadi ing kelas. Yen sampeyan wis tau krungu cara " entuk " utawa " getters ", iku padha karo aksesoris. Getters njupuk variabel pribadi lan konstanta kanggo ngakses njaba ruang lingkup kelas.Sintaksis
Kita nggunakake tembung kunci " entuk " kanggo aksesoris Jawa. Kanggo ngakses variabel " jeneng " kita bisa nggunakake getter ing ngisor iki getName() . Kanggo conto cara accessor, deleng ing ngisor iki.
public class Student {
private String name;
public String getName() {
return name;
}
}
Elinga yen saben getter duwe tembung kunci " entuk " sadurunge jeneng variabel ing teken metode lan jinis bali padha karo variabel sing bakal bali. Amarga variabel " jeneng " jinis " String ", mula metode getter / accessor uga ngasilake " String ".
Mutator
Cara mutator ing Jawa didhukung dening tembung "mutasi", sing tegesé ngowahi. Mutator ngidini pangguna nyetel / mutasi nilai variabel pribadi saka obyek kelas. Ing konteks pemrograman berorientasi obyek, metode " set " utawa " setter " uga dikenal minangka mutator. Setter nggampangake enkapsulasi amarga anggota data pribadi ora bisa diowahi langsung. Dadi metode setter / mutator digunakake kanggo nganyari nilai variabel ing njaba ruang lingkup kelas.Sintaksis
Kanggo mutator, kita nggunakake tembung kunci " set ". Saben setter ditetepake kanthi tembung kunci "set" diikuti karo jeneng variabel sing kudu dimutasi. Ing kene, kita nggunakake setter setName () sing njupuk variabel jinis String minangka parameter.
public class Student {
private String name;
public void setName(String name) {
this.name = name;
}
}
Napa kita butuh aksesoris lan mutator?
We kudu getter lan setter utawa accessors lan mutator kanggo nglindhungi informasi sensitif ing kelas. Informasi kasebut dilindhungi saka panggunaan Ilegal kanthi nggunakake metode standar kasebut. Kajaba iku, set data ing mutator uga bisa divalidasi yen memenuhi kabeh syarat program.Tuladha Aksesor lan Mutator
Kanthi nggunakake kelas siswa ing ngisor iki, ayo deleng conto metode aksesor lan mutator.Tuladha
import java.util.Arrays;
public class Student {
private String name;
private Integer ID;
private String DOB;
private double GPA;
private String[] courses;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getID() {
return ID;
}
public void setID(Integer iD) {
this.ID = iD;
}
public String getDOB() {
return DOB;
}
public void setDOB(String dOB) {
this.DOB = dOB;
}
public double getGPA() {
return GPA;
}
public void setGPA(double gPA) {
this.GPA = gPA;
}
public String[] getCourses() {
return courses;
}
public void setCourses(String[] courses) {
this.courses = courses;
}
public static void main(String[] args) {
Student student1 = new Student();
System.out.println("Student Bio [ Before using Accessors & Mutators ]");
// calling accessor methods
System.out.print("Name: " + student1.getName());
System.out.print("\tID: " + student1.getID());
System.out.print("\tGPA: " + student1.getGPA());
System.out.print("\tDOB: " + student1.getDOB());
System.out.println("\tCourses: " + Arrays.toString(student1.getCourses()));
// calling mutator methods
student1.setName("Alex Coy");
student1.setID(3115);
student1.setGPA(2.79);
student1.setDOB("08/08/1998");
String[] courses = { "Object Oriented Programming", "Cryptography", "Photography", "Network Security" };
student1.setCourses(courses);
System.out.println("\nStudent Bio [ After using Mutators & Accessors ]");
// calling accessor methods
System.out.print("Name: " + student1.getName());
System.out.print("\tID: " + student1.getID());
System.out.print("\tGPA: " + student1.getGPA());
System.out.print("\tDOB: " + student1.getDOB());
System.out.println("\tCourses: " + Arrays.toString(student1.getCourses()));
}
}
Output
Bio Siswa [ Sadurunge nggunakake Aksesor & Mutator ] Jeneng: null ID: null IPK: 0.0 DOB: null Kursus: null Bio Siswa [ Sawise nggunakake Mutators & Accessors ] Jeneng: Alex Coy ID: 3115 GPA: 2.79 DOB: 08/08/1998 Kursus: [Pemrograman Berorientasi Objek, Kriptografi, Fotografi, Keamanan Jaringan]
GO TO FULL VERSION