Objašnjeni geteri i postavljači u Javi

Dobavljači i postavljači koriste se za zaštitu vaših podataka, posebno pri stvaranju klasa.

Za svaku varijablu instance metoda gettera vraća svoju vrijednost dok metoda postavljača postavlja ili ažurira vrijednost. S obzirom na to, getters i utemeljitelji su također poznat kao Pristupnici i mutators , respektivno.

Po dogovoru getteri započinju riječju "get", a setteri riječju "set", nakon čega slijedi ime varijable. U oba slučaja prvo slovo imena varijable napisano je velikim slovom:

public class Vehicle { private String color; // Getter public String getColor() { return color; } // Setter public void setColor(String c) { this.color = c; } }

Metoda dobivača vraća vrijednost atributa. Metoda postavljača uzima parametar i dodjeljuje ga atributu.

Nakon što su getter i setter definirani, koristimo ga u našem glavnom:

public static void main(String[] args) { Vehicle v1 = new Vehicle(); v1.setColor("Red"); System.out.println(v1.getColor()); } // Outputs "Red"

Geteri i postavljači omogućuju kontrolu nad vrijednostima. Danu vrijednost možete provjeriti u postavljaču prije nego što je stvarno postavite.

Zašto koristiti gettere i settere?

Dobavljači i postavljači omogućuju vam kontrolu pristupa i ažuriranja važnih varijabli u vašem kodu. Na primjer, razmotrite ovu metodu postavljanja:

public void setNumber(int number) { if (number  10) { throw new IllegalArgumentException(); } this.number = num; }

Upotrebom setNumbermetode možete biti sigurni da je vrijednost numberuvijek između 1 i 10. To je puno bolje od numberizravnog ažuriranja varijable:

obj.number = 13;

Ako numberizravno ažurirate , moguće je da ćete negdje drugdje u kodu izazvati neželjene nuspojave. Ovdje postavljanje numberna 13 krši ograničenje od 1 do 10 koje želimo uspostaviti.

Izrada numberprivatne varijable i upotreba setNumbermetode spriječili bi da se to dogodi.

S druge strane, jedini način za očitavanje vrijednosti numberje upotrebom getter metode:

public int getNumber() { return this.number; }