Používanie doplnkov a mutátorov v Jave

Jeden zo spôsobov, ako sa môžeme presadiť zapuzdrenie údajov je pomocou prístupových a mutátorov. Úlohou pristupujúcich a mutátorov je vrátiť sa a nastaviť hodnoty stavu objektu. Naučme sa, ako naprogramovať prístupové a mutátorské programy Jáva. Ako príklad použijeme a Trieda osôb s už definovaným stavom a konštruktorom:

Metódy prístupu

accessory metóda sa používa na vrátenie hodnoty súkromného poľa. Nasleduje schéma pomenovávania, ktorá prefixuje slovo „get“ na začiatok názvu metódy. Napríklad pridajme prístupové metódy pre krstné meno, meno a priezvisko:

Tieto metódy vždy vracajú rovnaký dátový typ ako príslušné súkromné ​​pole (napr. String) a potom jednoducho vracajú hodnotu tohto súkromného poľa.

K ich hodnotám teraz môžeme pristupovať pomocou metód objektu Osoba:

Mutátorové metódy

Metóda mutátora sa používa na nastavenie hodnoty súkromného poľa. Nasleduje schéma pomenovávania, ktorá prefixuje slovo „set“ na začiatok názvu metódy. Napríklad pridáme polia mutátora pre adresu a užívateľské meno:

instagram viewer

Tieto metódy nemajú návratový typ a akceptujú parameter, ktorý je rovnakým typom údajov ako ich zodpovedajúce súkromné ​​pole. Parameter sa potom použije na nastavenie hodnoty tohto súkromného poľa.

Teraz je možné upraviť hodnoty adresy a užívateľského mena v objekte Person:

Prečo používať prístupové a mutátory?

Je ľahké dospieť k záveru, že by sme mohli iba zmeniť súkromné ​​polia definície triedy na verejné a dosiahnuť rovnaké výsledky. Je dôležité si uvedomiť, že chceme čo najviac skryť údaje objektu. Extra nárazník poskytované týmito metódami nám umožňuje:

  • Zmeňte spôsob spracovania údajov v zákulisí.
  • Predstavte si validáciu na hodnoty, pre ktoré sú polia nastavené.

Povedzme, že sme sa rozhodli zmeniť spôsob ukladania stredných mien. Namiesto jedného reťazca môžeme teraz použiť celý rad reťazcov:

Implementácia vo vnútri objektu sa zmenila, ale vonkajší svet nie je ovplyvnený. Spôsob, akým sa tieto metódy nazývajú, zostáva úplne rovnaký:

Alebo povedzme, že aplikácia používajúca objekt Osoba môže akceptovať iba používateľské mená, ktoré majú maximálne desať znakov. V mutátore setUsername môžeme pridať overenie, aby sme sa uistili, že používateľské meno vyhovuje tejto požiadavke:

Ak je teraz používateľské meno odovzdané mutátoru setUsername dlhšie ako desať znakov, automaticky sa skráti.

instagram story viewer