⊗ppOpBsGSA 14 of 107 menu

Výhody setterov a getterov v OOP v PHP

V predchádzajúcej lekcii sme vytvorili pre každú vlastnosť getter a setter. Môže vzniknúť otázka, na čo sú takéto komplikácie potrebné, veď fakticky rovnakého efektu sa dá dosiahnuť, ak urobíme vlastnosti verejnými, nie súkromnými.

Vec sa má tak, že gettery a settery majú výhodu: pred prístupom k vlastnosti je možné vykonať niektoré kontroly. Napríklad v našom prípade pri zápise mena a priezviska môžeme skontrolovať, že nová hodnota nie je prázdny reťazec:

<?php class User { private $name; private $surn; public function setName($name) { if (strlen($name) > 0) { $this->name = $name; } else { echo 'name is incorrect'; } } public function setSurn($surn) { if (strlen($surn) > 0) { $this->surn = $surn; } else { echo 'surn is incorrect'; } } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

Poďme otestovať, ako to funguje. Najprv vytvoríme objekt triedy:

<?php $user = new User(); ?>

Teraz skúsme zapísať korektnú hodnotu:

<?php $user->setName('john'); ?>

A teraz skúsme zapísať nekorektnú:

<?php $user->setName(''); // chyba ?>

V triede Employee v setteri veku vykonajte kontrolu, že vek musí byť od 0 do 120.

V triede Employee v getteri platu urobte tak, aby pri čítaní platu na koniec jeho hodnoty bol pridaný znak dolára.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť