CodeGym/Java blog/Véletlen/Kiegészítők és Mutátorok Java nyelven
John Squirrels
Szint
San Francisco

Kiegészítők és Mutátorok Java nyelven

Megjelent a csoportban
Mielőtt belemerülnénk ebbe a koncepcióba, tisztában kell lennie a Java osztályokkal és tokozással .

Beágyazás Java nyelven

A beágyazás, ahogy a neve is sugallja, az adatok és a módszerek egyetlen egységként való összefoglalásának folyamata. Az objektum-orientált programozásban az osztály adattagjait priváttá teszik, hogy korlátozzák a közvetlen hozzáférést. Így a beágyazott adattagok nem kérhetők le vagy módosíthatók megfelelően meghatározott módon. Ehhez Java-ban definiáljuk az accessor és a mutator metódusokat. Nézzük meg ezeket a módszereket részletesen.

Mik azok az accessorok és mutátorok a Java-ban?

Kiegészítők

Az accessor metódus nevét az „ access ” szó vezeti, amely lehetővé teszi a felhasználó számára, hogy hozzáférjen az osztály privát információihoz. Ha valaha is hallott a „ get ” módszerről vagy a „ getterekről ”, az ugyanaz, mint az accessorok. A getterek lekérik a privát változókat és konstansokat, hogy egy osztály hatókörén kívül is hozzáférjenek.

Szintaxis

A „ get ” kulcsszót használjuk a Java-elfogadókra. A „ name ” változó eléréséhez használhatjuk a következő getName() gettert . Az accessor metódus példájához nézze meg a következőket.
public class Student {

	private String name;

	public String getName() {
		return name;
	}
}
Kérjük, vegye figyelembe, hogy minden getternél a változó neve előtt szerepel a „ get ” kulcsszó a metódus aláírásában, és a visszatérési típus megegyezik a visszaküldendő változóéval. Mivel a „ name ” változó „ String ” típusú, így a getter/accessor metódus is „ String ”-et ad vissza.

Mutátorok

A Java mutátoros módszerét a „mutate” szó hajtja, ami szó szerint azt jelenti, hogy módosítani kell. A mutátorok lehetővé teszik a felhasználók számára, hogy beállítsák/mutálják egy osztályobjektum privát változóinak értékét. Az objektum-orientált programozási környezetben a „ set ” metódus vagy a „ setterek ” mutátoroknak is ismertek. A setterek megkönnyítik a beágyazást, mivel a privát adattagok közvetlenül nem módosíthatók. Tehát setter metódusokat/mutátorokat használnak a változó értékének frissítésére az osztály hatókörén kívül.

Szintaxis

A mutátorok esetében a „ set ” kulcsszót használjuk . Minden settert a „set” kulcsszó határoz meg, amelyet a mutációra szoruló változó neve követ. Itt a setName() settert használjuk, amely egy String típusú változót vesz paraméterként.
public class Student {

	private String name;

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

Miért van szükségünk hozzáférőkre és mutátorokra?

Getterekre és setterekre, vagy accessorokra és mutátorokra van szükségünk az osztály érzékeny információinak védelméhez. Ezekkel a szabványos módszerekkel védjük az információkat az illegális felhasználástól. Sőt, a mutátorban lévő adathalmaz is érvényesíthető, ha megfelel egy program minden követelményének.

Példák hozzáférőre és mutátorra

Az alábbi tanulói osztály használatával nézzük meg az accessor és a mutator metódusok példáit.

Példa

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

Kimenet

Student Bio [ Az Accessors & Mutators használata előtt ] Név: null ID: null GPA: 0.0 DOB: null Tanfolyamok: null Student Bio [ A Mutators & Accessors használata után ] Név: Alex Coy ID: 3115 GPA: 2,79 DOB: 1998.08.08. Tanfolyamok: [objektumorientált programozás, kriptográfia, fotózás, hálózatbiztonság]

Következtetés

Ez egy gyors bevezető volt, és példa volt a Java Accessorokra és mutátorokra. Javasoljuk, hogy készítsen saját mintapéldákat, és tesztelje ezeket a módszereket saját maga. Következő gyakorlatként megtalálhatja a getterek és a setterek automatikus hozzáadásának módjait az IDE által. Ismerje meg és tudassa velünk!
Hozzászólások
  • Népszerű
  • Új
  • Régi
Hozzászólás írásához be kell jelentkeznie
Ennek az oldalnak még nincsenek megjegyzései