Co jsou konstanty třídy OOP v PHP?

Co Jsou Konstanty Tridy Oop V Php



Programovací paradigma známé jako objektově orientované programování (OOP) umožňuje uživatelům psát modulární, opakovaně použitelné programy. Konstantní použití v rámci třídy je jednou z funkcí OOP. Konstanty třídy v PHP jsou hodnoty, které nelze po zadání změnit. Jsou členy třídy a nejsou spojeni s žádnou konkrétní instancí třídy.

Co jsou konstanty třídy v PHP?

Začít s, Konstanty třídy odkazují na hodnotu, která zůstává konstantní v průběhu skriptu. V OOP umožňuje programátorovi definovat hodnotu, která má v rámci třídy specifický význam a nelze ji aktualizovat žádnou z metod třídy. The konst klíčové slovo se používá k určení třídní konstanty , které mají v průběhu skriptu konstantní hodnotu.







A třídní konstanta je hodnota definovaná v rámci třídy, která zůstává konstantní po celou dobu provádění programu. Termín konst se používá k jejich definování, poté následuje název a hodnota této konstanty. Jakmile jsou definovány, nelze je za běhu měnit.



Můžeme například definovat a třídní konstanta pro hodnotu Pi následujícím způsobem:



třída Mat {
const PI = 3.14 ;
}


Zde jsme definovali třídní konstanta PI pro hodinu matematiky 3.14. Protože konstanta je vázána na třídu a ne na instanci třídy, můžeme k ní přistupovat bez instance jako v:





echo Matematika::PI;


Ve srovnání s běžnými proměnnými třídní konstanty mají několik výrazných rozdílů. Za prvé, jsou neměnné, což znamená, že je nelze změnit, jakmile jsou definovány. Za druhé, konstantní hodnoty rozlišují velká a malá písmena, na rozdíl od proměnných v PHP. Dále jsou konstanty definovány pomocí konst klíčové slovo, zatímco proměnné používají byl klíčové slovo, což je důležitý rozdíl.

Přístup ke konstantám třídy

Přístup třídní konstanty lze provést dvěma způsoby.



1: Použití rozlišení rozsahu (::)

Za prvé, třídní konstanty být přístupné pomocí rozlišení rozsahu (::) operátor, jako v:

Název třídy::CONSTANT_NAME


Podívejte se na příklad:

< ?php
třída Osoba {
const Jméno = 'Larry' ;
stálý věk = 32 ;
konst Národnost = 'Americký' ;
}
echo Osoba::Jméno, ' \n ' ;
echo Osobnost, ' \n ' ;
echo Osoba::Národnost;
? >


Ve výše uvedeném kódu je Osoba třída určuje jméno, věk a národnost jako tři konstanty . Každá konstanta má definovaný řetězec nebo celočíselnou hodnotu.

The :: operátor se používá ve spojení s názvem konstanty pro přístup k hodnotě konstanty třídy. Například používáme syntaxi Osoba::Jméno získat hodnotu název konstantní.

Nakonec pomocí příkazu echo vytiskneme na obrazovku hodnoty konstant Jméno, Věk a Národnost.

2: Použití klíčového slova „já“.

Případně můžeme také přistupovat k třídní konstanty v rámci třídy samotné pomocí 'sebe' klíčové slovo následované níže uvedeným názvem konstanty:

self::CONSTANT_NAME


Podívejte se na příklad přístupu ke konstantě pomocí klíčové slovo.

< ?php
třída Kruh {
konst PI = 3,14159 ;
soukromé $ poloměr ;
veřejnost funkce __postavit ( $ poloměr ) {
$toto - > poloměr = $ poloměr ;
}
veřejnost funkce Plocha ( ) {
vrátit se sebe::PI * $toto - > poloměr * $toto - > poloměr;
}
}
$kruh = nový kruh ( 16 ) ;
echo $kruh - > Plocha ( ) ;
? >


V tomto výše uvedeném příkladu třída s názvem Circle specifikuje soukromou vlastnost nazvanou $radius a konstantu nazvanou PI. Vzorec použitý v getArea() funkce k získání obsahu kruhu je PI * poloměr * poloměr , kde PI je hodnota konstanty PI a poloměr je hodnota parametru $radius.

V rámci getArea() metodu, využíváme klíčové slovo následované názvem konstanty pro získání hodnoty konstanty PI: sebe::PI .


Při definování je třeba mít na paměti několik aspektů třídní konstanty . Nejprve se ujistěte, že název konstanty třídy je v rámci třídy jedinečný. Za druhé, měla by dodržovat stejné konvence pojmenování jako názvy tříd, to znamená použití Camel Case pro konstanty. Nakonec je dobrým zvykem definovat pouze skalární hodnoty, jako jsou celá čísla a řetězce třídní konstanty .

Dědičnost třídních konstant

Další důležitou vlastností třídní konstanty je, že je mohou zdědit dětské třídy. V podstatě může podtřída přistupovat ke konstantním hodnotám definovaným její rodičovskou třídou pomocí rodič klíčové slovo. Například:

< ?php
třída Zvíře {
const ANIMAL_TYPE = 'savec' ;
}
třída Pes rozšiřuje Zvíře {
veřejnost funkce getType ( ) {
echo 'Pes je' , rodič::ANIMAL_TYPE;
}
}
$pes = nový pes ( ) ;
$pes - > getType ( ) ;
? >


Na tomto obrázku má třída Zvíře konstantu s hodnotou „ savec “ pojmenované ANIMAL_TYPE . The Pes je podtřída, která je odvozena od třídy Animal.

Veřejná funkce getType() třídy Dog jednoduše vydá hodnotu A NIMAL_TYPE konstantní přístupem ke konstantě nadřazené třídy pomocí rodič::klíčové slovo .

Nakonec zkonstruujeme objekt třídy Dog a použijeme getType() funkce, která vrací hodnotu zděděné konstanty třídy Animal ANIMAL_TYPE .

Závěr

Použití třídní konstanty je klíčovou součástí objektově orientovaného programování v PHP a dalších programovacích jazycích . Používáním třídní konstanty , můžeme se vyhnout pevně zakódovaným hodnotám v programu, což může být problém při aktualizaci kódu. Je důležité dodržovat konvence pojmenování a při jejich definování mít na paměti dostupnost třídních konstant v programu.