CodeGym /Blog Java /rawak /Aksesori Dan Mutator Di Java
John Squirrels
Tahap
San Francisco

Aksesori Dan Mutator Di Java

Diterbitkan dalam kumpulan
Sebelum kita menyelami konsep ini, anda perlu mengetahui tentang kelas dan enkapsulasi dalam Java .

Enkapsulasi di Jawa

Enkapsulasi, seperti namanya, adalah proses melampirkan data dan kaedah sebagai satu unit. Dalam pengaturcaraan berorientasikan objek , ahli data kelas dijadikan peribadi untuk menyekat akses terus kepada mereka. Jadi ahli data yang dikapsulkan tidak boleh diambil atau diubah suai tanpa cara yang ditentukan dengan betul. Untuk ini, kami mentakrifkan kaedah pengakses dan mutator dalam Java. Mari kita lihat kaedah ini secara terperinci.

Apakah aksesori dan mutator dalam Java?

Aksesori

Nama kaedah pengakses didorong oleh perkataan " akses " yang membolehkan pengguna mengakses maklumat peribadi dalam kelas. Jika anda pernah mendengar tentang kaedah " dapatkan " atau " pengambil ", ia adalah perkara yang sama seperti pengakses. Getter mendapatkan semula pembolehubah peribadi dan pemalar untuk mengakses di luar skop kelas.

Sintaks

Kami menggunakan kata kunci " dapatkan " untuk pengakses Java. Untuk mengakses pembolehubah " nama " kita boleh menggunakan getter getName() berikut . Untuk contoh kaedah pengakses, lihat perkara berikut.

public class Student {

	private String name;
	
	public String getName() {
		return name;
	}
}
Sila ambil perhatian bahawa setiap pemeroleh mempunyai kata kunci " dapatkan " sebelum nama pembolehubah dalam tandatangan kaedah dan jenis pemulangan adalah sama dengan pembolehubah yang akan dikembalikan. Oleh kerana " nama " pembolehubah adalah daripada jenis " Rentetan ", jadi kaedah pengambil/aksesor juga mengembalikan " Rentetan ".

Mutator

Kaedah mutator di Jawa didorong oleh perkataan "mutasi", yang bermaksud mengubah suai. Mutator membenarkan pengguna menetapkan/memutasi nilai pembolehubah persendirian objek kelas. Dalam konteks pengaturcaraan berorientasikan objek, kaedah " set " atau " setters " juga dikenali sebagai mutator. Setter memudahkan enkapsulasi kerana ahli data peribadi tidak boleh diubah suai secara langsung. Jadi kaedah penetap/mutator digunakan untuk mengemas kini nilai pembolehubah di luar skop kelas.

Sintaks

Untuk mutator, kami menggunakan kata kunci " set ". Setiap penetap ditakrifkan oleh kata kunci "set" diikuti dengan nama pembolehubah yang perlu diubah. Di sini, kami menggunakan setName() setter yang mengambil pembolehubah jenis String sebagai parameter.

public class Student {

	private String name;

	public void setName(String name) {
		this.name = name;
	}
}

Mengapa kita memerlukan aksesori dan mutator?

Kami memerlukan pengambil dan penetap atau pengakses dan mutator untuk melindungi maklumat sensitif dalam kelas. Maklumat dilindungi daripada penggunaan haram dengan menggunakan kaedah standard ini. Selain itu, set data dalam mutator juga boleh disahkan jika ia memenuhi semua keperluan program.

Contoh Aksesor dan Mutator

Dengan menggunakan kelas pelajar di bawah, mari kita lihat contoh kaedah pengakses dan mutator.

Contoh


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()));
	}
}

Pengeluaran

Bio Pelajar [ Sebelum menggunakan Aksesor & Mutator ] Nama: nol ID: null GPA: 0.0 DOB: null Kursus: null Bio Pelajar [ Selepas menggunakan Mutators & Accessors ] Nama: Alex Coy ID: 3115 GPA: 2.79 DOB: 08/08/1998 Kursus: [Pengaturcaraan Berorientasikan Objek, Kriptografi, Fotografi, Keselamatan Rangkaian]

Kesimpulan

Ini adalah pengenalan pantas dan contoh pengakses dan mutator di Jawa. Anda dinasihatkan untuk mencipta contoh sampel anda sendiri dan menguji kaedah ini untuk diri sendiri. Sebagai latihan seterusnya, anda boleh mencari cara menambah getter dan setter secara automatik oleh IDE. Ketahui dan beritahu kami!
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION