Mitä OOP-luokan vakiot ovat PHP:ssä?

Mita Oop Luokan Vakiot Ovat Php Ssa



Ohjelmointiparadigma, joka tunnetaan nimellä olioohjelmointi (OOP) avulla käyttäjät voivat kirjoittaa modulaarisia, uudelleenkäytettäviä ohjelmia. Vakio käyttö luokassa on yksi OOP:n ominaisuuksista. Luokkavakiot PHP:ssä ovat arvoja, joita ei voi muuttaa sen jälkeen, kun ne on määritetty. Ne ovat luokan jäseniä, eikä niitä ole liitetty mihinkään tiettyyn luokkainstanssiin.

Mitä ovat PHP:n luokkavakiot?

Aivan aluksi, Luokkavakiot viittaa arvoon, joka pysyy vakiona skriptin aikana. OOP:ssa sen avulla ohjelmoija voi määrittää arvon, jolla on tietty merkitys luokassa ja jota ei voi päivittää millään luokkametodeista. The konst määrittämiseen käytetään avainsanaa luokan vakiot , joille annetaan vakioarvo skriptin aikana.







A luokan vakio on luokassa määritetty arvo, joka pysyy vakiona koko ohjelman suorituksen ajan. Termi konst käytetään niiden määrittämiseen, minkä jälkeen seuraa kyseisen vakion nimi ja arvo. Kun ne on määritetty, niitä ei voi muuttaa ajon aikana.



Voimme esimerkiksi määritellä a luokan vakio Pi:n arvolle seuraavalla tavalla:



luokan matematiikka {
const PI = 3.14 ;
}


Tässä olemme määritelleet luokkavakio PI matematiikan tunnille 3.14. Koska vakio on sidottu luokkaan eikä luokan ilmentymään, voimme käyttää sitä ilman esiintymää, kuten:





kaiku Matematiikka::PI;


Tavallisiin muuttujiin verrattuna luokan vakiot on muutamia merkittäviä eroja. Ensinnäkin ne ovat muuttumattomia, eli niitä ei voi muuttaa kerran määriteltynä. Toiseksi, vakioarvot kirjainkoolla on merkitystä, toisin kuin PHP:n muuttujat. Lisäksi vakiot määritellään käyttämällä konst avainsana, kun taas muuttujat käyttävät oli avainsana, joka on tärkeä ero.

Luokkavakioiden käyttäminen

Pääsy luokan vakiot voidaan tehdä kahdella tavalla.



1: Scope Resolution käyttö (::)

Ensinnäkin, luokan vakiot pääsee käsiksi käyttämällä mittaresoluutio (::) operaattori, kuten:

Luokan nimi::CONSTANT_NAME


Katso esimerkki:

< ?php
luokan henkilö {
const Nimi = 'Larry' ;
const Ikä = 32 ;
const Kansallisuus = 'Amerikkalainen' ;
}
kaiku Henkilö::Nimi, ' \n ' ;
kaiku Henkilö::Ikä, ' \n ' ;
kaiku Henkilö::kansalaisuus;
? >


Yllä olevassa koodissa Henkilö luokka määrittää nimen, iän ja kansallisuuden kolmeksi vakioita . Jokaiselle vakiolle on määritetty merkkijono tai kokonaisluku.

The :: -operaattoria käytetään yhdessä vakion nimen kanssa luokkavakion arvon saamiseksi. Käytämme esimerkiksi syntaksia Henkilö::Nimi noutaaksesi arvon Nimi vakio.

Lopuksi tulostamme näytölle Nimi-, Ikä- ja Kansallisuusvakioiden arvot echo-komennolla.

2: 'itse'-avainsanan käyttäminen

Vaihtoehtoisesti voimme myös käyttää luokan vakiot itse luokassa käyttäen `itse` avainsana, jota seuraa alla annettu vakionimi:

itse::CONSTANT_NAME


Katso esimerkki päästäksesi vakioon käyttämällä itse avainsana.

< ?php
luokan ympyrä {
const PI = 3,14159 ;
yksityinen $säde ;
julkinen toiminto __rakentaa ( $säde ) {
$tämä - > säde = $säde ;
}
julkinen toiminto Alue ( ) {
palata itse::PI * $tämä - > säde * $tämä - > säde;
}
}
$ympyrä = uusi ympyrä ( 16 ) ;
kaiku $ympyrä - > Alue ( ) ;
? >


Tässä yllä olevassa esimerkissä luokka nimeltä Circle määrittää yksityisen ominaisuuden nimeltä $radius ja vakion nimeltä PI. Käyttämä kaava getArea() funktio ympyrän alueen saamiseksi on PI * säde * säde , jossa PI on PI-vakion arvo ja säde on $radius-parametrin arvo.

Sisällä getArea() menetelmää, käytämme itse avainsana, jota seuraa vakion nimi saadaksesi PI-vakion arvon: itse::PI .


Määrittelyssä on otettava huomioon muutama seikka luokan vakiot . Varmista ensin, että luokkavakion nimi on ainutlaatuinen luokassa. Toiseksi, sen tulisi noudattaa samoja nimeämiskäytäntöjä kuin luokkanimien, eli Camel Casea käytetään vakioille. Lopuksi on hyvä käytäntö määrittää vain skalaariarvot, kuten kokonaisluvut ja merkkijonot, kuten luokan vakiot .

Luokkavakioiden periytyminen

Toinen tärkeä ominaisuus luokan vakiot että ne voivat periä lapsiluokat. Pohjimmiltaan alaluokka voi käyttää emoluokkansa määrittelemiä vakioarvoja käyttämällä vanhempi avainsana. Esimerkiksi:

< ?php
luokan eläin {
const ANIMAL_TYPE = 'nisäkäs' ;
}
luokka Koira laajentaa Animal {
julkinen toiminto getType ( ) {
kaiku 'Koira on' , vanhempi::ANIMAL_TYPE;
}
}
$koira = uusi koira ( ) ;
$koira - > getType ( ) ;
? >


Tässä kuvassa luokassa Animal on vakio, jonka arvo on ' nisäkäs ”nimetty ANIMAL_TYPE . The Koira on alaluokka, joka on peräisin Animal-luokasta.

Julkinen toiminta getType() Koira-luokan yksinkertaisesti tulostaa arvon A NIMAL_TYPE vakio siirtymällä pääluokan vakioon käyttämällä vanhempi::avainsana .

Lopuksi rakennamme Dog-luokan objektin ja käytämme getType() funktio, joka palauttaa Animal-luokan perityn vakion arvon ANIMAL_TYPE .

Johtopäätös

Käyttö luokan vakiot on keskeinen osa olio-ohjelmointia PHP:ssä ja muissa ohjelmointikielissä . Käyttämällä luokan vakiot , voimme välttää kovakoodatut arvot ohjelmassa, mikä voi olla vaivalloista koodin päivittämisen aikana. On tärkeää noudattaa nimeämiskäytäntöjä ja pitää mielessä luokkavakioiden saatavuus ohjelman sisällä niitä määriteltäessä.