Keitimas matomumas kintamuosiuose, ypač savybėse ir metoduose objektinio programavimo srityje, yra svarbus konceptas, turintis didelę reikšmę visiems kūrėjams. Ypač PHP kalboje matomumo modifikatoriai public, private ir protected nustato, kas gali pasiekti tam tikras savybes ir metodus. Šie konceptai padeda įgyvendinti duomenų kapsulę, todėl objektiniai programiniai sprendimai tampa tvirtesni ir lengviau prižiūrimi. Šiame vadove sužinosi, kaip šie modifikatoriai naudojami ir kokią įtaką jie gali turėti tavo programavimo struktūrai.

Svarbiausios įžvalgos

  • public: savybės yra prieinamos iš bet kurios vietos.
  • private: savybės yra prieinamos tik pačioje klasėje.
  • protected: savybės yra prieinamos viduje klasės ir paveldinčiose klasėse.

Žingsnis po žingsnio vadovas

1. Paprastos klasės su vieša savybe sukūrimas

Pradžiai sukursime klasę Auto, kurioje apibrėšime viešą savybę pavadinimu Greitis. Tai suteiks tau aiškų vaizdą, kaip galima išorėje pasiekti šią savybę.

Savybų matomumas PHP – viešas, privatus ir apsaugotas

Dabar gali sukurti šios klasės objektą:

Savybių matomumas PHP – public, private ir protected

Dabar, jei nustatysi Auto greitį į 30, 50 arba net 130, neturėsi jokių apribojimų – tai yra viešo matomumo privalumas.

2. Maksimalios greičio savybės įvedimas su privatine savybe

Dabar pridėsime privatų savybę maksimalusGreitis ir pakeisime metodą taip, kad jis nustatytų tik leistinas greičio vertes. Tokiu būdu gali užtikrinti, kad bus priskiriamos tik galiojančios vertės.

Šiuo metodu gali nustatyti greitį ir tuo pačiu užtikrinti, kad nesusidurtum su klaidomis dėl per didelių verčių.

Ypatybių matomumas PHP – viešas, privatus ir apsaugotas

3. Getter'io ir Setter'io metodų naudojimas privatiems savybėms

Dėl to, kad maksimalusGreitis yra privatus, gali jį padaryti prieinamą tik per metodus, esančius klasėje. Toliau pateiktas pavyzdys parodo, kaip implementuoti Getter'io ir Setter'io metodus.

Ypatybių matomumas PHP - viešas, privatus ir apsaugotas

Per šiuos metodus pasieki kapsulę ir kontrolę virš savybių išorėje.

Nuosavybių matomumas PHP – viešas, privatūs ir apsaugoti

4. Suprasti protected modifikatorių

Dabar apžvelgsime protected modifikatorių. Šis modifikatorius suteikia klasėms, kurios paveldi iš kitų klasių, prieigą prie tam tikrų savybių. Tai reiškia, kad paveldinčios klasės gali toliau naudoti arba perrašyti specifinį metodą ar savybę.

Savybės matomumas PHP – public, private & protected

Šiuo atveju lenktyniniai automobiliai gali pasiekti saugomą savybę, tuo tarpu išorinės klasės to padaryti negali. Tai leidžia užkoduoti tikslų elgesį paveldinčioms klasėms.

5. Sprendimas dėl matomumo

Svarbus sprendimas, kurį turi priimti, yra susijęs su savo savybių matomumu. Pagrindiniu atveju turėtum naudoti privatumą, nebent akivaizdu, kad savybė reikalinga paveldėjimo atveju. Tada pasirink protected.

Savybių matomumas PHP - viešas, privatus ir apsaugotas

Atmink, kad jei esi priežiūros etape arba dirbi prie naujos funkcijos, visada gali vėliau pakeisti prieigos valdymą, jei tai taps būtina.

Santrauka – Matomumas savybėse: public, private ir protected PHP

Savybių matomumas PHP yra esminis suprantant duomenų kapsulę ir objektinį programavimą. Naudodamas modifikatorius public, private ir protected gali pasiekti tikslumą ir kontrolę prieigai prie savybių ir metodų savo klasėse. Tinkamai taikydamas šiuos principus, žymiai pagerinsi savo kodo priežiūrą ir saugumą.

Dažnai užduodami klausimai

Kas reiškia public PHP?public reiškia, kad savybė ar metodas yra prieinamas iš bet kurios vietos.

Kas reiškia private PHP?private reiškia, kad savybė ar metodas gali būti kviečiamas tik iš pačios klasės.

Kas reiškia protected PHP?protected reiškia, kad savybė ar metodas gali būti kviečiami iš pačios klasės ir paveldinčių klasų.

Kada turėčiau naudoti private?Turi naudoti private kaip numatytąjį, kad padidintum matomumą ir kontrolę.

Kada galiu pereiti prie protected?Pereik prie protected, kai savybė reikalinga paveldinčiose klasėse ir nori užkirsti kelią prieigai iš išorės.