Getters și setere sunt utilizate pentru a vă proteja datele, în special atunci când creați clase.
Pentru fiecare variabilă de instanță, o metodă getter își returnează valoarea în timp ce o metodă setter setează sau actualizează valoarea acesteia. Având în vedere acest lucru, getters și seters sunt, de asemenea, cunoscuți ca accesorii și mutatori, respectiv.
Prin convenție, primitorii încep cu cuvântul „obține” și setează cu cuvântul „set”, urmat de un nume variabil. În ambele cazuri, prima literă a numelui variabilei este cu majusculă:
public class Vehicle {
private String color;
// Getter
public String getColor() {
return color;
}
// Setter
public void setColor(String c) {
this.color = c;
}
}
Metoda getter returnează valoarea atributului. Metoda setter ia un parametru și îl atribuie atributului.
Odată ce getter-ul și setter-ul au fost definite, le folosim în principalul nostru:
public static void main(String[] args) {
Vehicle v1 = new Vehicle();
v1.setColor("Red");
System.out.println(v1.getColor());
}
// Outputs "Red"
Getters și seters permit controlul asupra valorilor. Puteți valida valoarea dată în setter înainte de a seta efectiv valoarea.
De ce să folosiți getters și setere?
Getters și seters vă permit să controlați cât de importante sunt accesate și actualizate variabilele în codul dvs. De exemplu, luați în considerare această metodă de setare:
public void setNumber(int number) {
if (number < 1 || number > 10) {
throw new IllegalArgumentException();
}
this.number = num;
}
Prin utilizarea setNumber
metoda, puteți fi sigur că valoarea number
este întotdeauna între 1 și 10. Acest lucru este mult mai bun decât actualizarea fișierului number
variabilă direct:
obj.number = 13;
Dacă actualizați number
direct, este posibil să provocați efecte secundare neintenționate în altă parte a codului. Aici, setare number
la 13 încalcă constrângerea de la 1 la 10 pe care dorim să o stabilim.
Făcând number
o variabilă privată și folosind setNumber
metoda ar împiedica acest lucru să se întâmple.
Pe de altă parte, singura modalitate de a citi valoarea lui number
este folosind o metodă getter:
public int getNumber() {
return this.number;
}
#Getters #și #Seters #în #Java #explicate
Getters și Seters în Java explicate