Sissejuhatus pärandisse PHP-s

Pärimine on viis vastloodud klassi olemasoleva funktsionaalsuse laiendamiseks. Lisaks põhiklassi funktsioonide laiendamisele saame vastloodud klassile lisada ka mõnda muud funktsionaalsust. Kui me pärime ühe klassi, siis öeldakse, et päritud klass on lasteklass (alamklass) ja millest me pärime, seda nimetatakse vanemklassiks. Vanemklass on tuntud ka kui põhiklass. See võimaldab programmeerimiskoodi ja selle korduvkasutatavust paremini hallata. Pärandi kasutamise mõte on seotud koodi parema haldamise ja koodi korduvkasutatavusega. Selles teemas hakkame õppima pärandit PHP-s.

Pärandi tüübid PHP-s

PHP toetab erinevat tüüpi pärandusi, näiteks JAVA. Allolevas tabelis on toodud päranditüüpide loetelu ja toetav olek PHP-s.

Pärandi tüüpTugi PHP-s
Üksik pärandJAH
Mitmetasandiline pärandJAH
Hierarhiline pärimineJAH
Mitu päranditEI

1. Üksik pärand

PHP toetab ühekordset pärimist. Üksikpärand on PHP-s mõiste, milles ühte klassi saab pärida ainult üks klass. Selle protsessi vahel peab olema kaks klassi. Üks on põhiklass (vanemate klass) ja teine ​​lasteklass ise. Mõistame sama näitega. Rahvapäraselt tuntakse seda lihtsa pärandina. Seda tüüpi pärand PHP keeles jääb samaks nagu JAVA, C ++ jne.

Kood:

<_?php
class MyAccess (
var $var = "This is first var";
protected $fist_name;
// simple class method
function returnVar() (
echo $this->fist_name;
)
function set_fist_name($set_this)(
$this->fist_name = $set_this;
)
)
class child extends MyAccess (
function setVal($set_this)(
$this->fist_name = $set_this;
)
function getVal()(
echo $this->fist_name;
)
)
$obj1 = new child();
$obj1->setVal("Jai Shre");
$obj1->getVal();
?>

MyAccess on lapsevanem ja laps on lasteklassi nimi.

Väljund:

2. Mitmetasandiline pärand

PHP toetab mitmetasandilist pärandit. Seda tüüpi pärandi korral on meil rohkem kui 2 klassi. Seda tüüpi pärandi korral pärib vanemklass lasteklassi, seejärel pärib see lasteklass lasteklassi. Seda tüüpi pärand PHP keeles jääb samaks kui C ++ jne.

Kood:

<_?php
class ParentClass (
var $var = "This is first var";
public $fist_name;
// simple class method
function returnVar() (
echo $this->fist_name;
)
function set_fist_name($set_this)(
$this->fist_name = $set_this;
)
)
class child_1 extends ParentClass (
function setVal($set_this)(
$this->fist_name = $set_this;
)
function getVal()(
echo "Extended By Parent Class -". $this->fist_name;
)
)
class child_2 extends child_1 (
function setVal($set_this)(
$this->fist_name = $set_this;
)
function getVal()(
echo "Extended By child 1 - ".$this->fist_name;
)
)
$obj1 = new child_1();
$obj1->setVal("This is first inherited class");
$obj1->getVal();
echo "
";
$obj2 = new child_2();
$obj2->setVal("This is second inherited class");
$obj2->getVal();
?>

Väljund:

3. Hierarhiline pärimine

PHP toetab hierarhilist pärimist. Hierarhiline pärand on pärandi tüüp, milles programm koosneb üksikvanemast ja enam kui ühest lasteklassist. Saame sellest näitest samamoodi aru. Seda tüüpi pärand PHP keeles jääb samaks nagu JAVA, C ++ jne.

Kood:

<_?php
class ParentClass (
var $var = "This is first var";
public $fist_name;
// simple class method
function returnVar() (
echo $this->fist_name;
)
function set_fist_name($set_this)(
$this->fist_name = $set_this;
)
)
class child_1 extends ParentClass (
function setVal($set_this)(
$this->fist_name = $set_this;
)
function getVal()(
echo $this->fist_name;
)
)
class child_2 extends ParentClass (
function setVal($set_this)(
$this->fist_name = $set_this." - ".$set_this;;
)
function getVal()(
echo $this->fist_name;
)
)
$obj1 = new child_1();
$obj1->setVal("This is first child class");
$obj1->getVal();
echo "
";
$obj2 = new child_2();
$obj2->setVal("This is second child class");
$obj2->getVal();
?>

Väljund:

Meil on üks vanemklass vastavalt ParentClass ja kaks lasteklassi laps_1 ja laps_2. Antud pärandusstsenaariumi nimetatakse hierarhiliseks pärandiks.

Pärandi tähtsus PHP-s

Pärandi tähtsus on palju suurem, kuna sellega kaasnevad tohutud eelised.

  • Koodi korduvkasutatavus on pärandis üks sagedamini kasutatavaid, põhiklass jääb protsessi vaheliseks. Nagu näeme kogu pärandi ülaltoodud näites, kasutatakse koodi ühest klassist teise. Me ei pea nõudma sama asja kordamist uuesti ja uuesti.
  • Põhiklassi saavad klasside hierarhias kasutada mitmed sellest tuletatud klassid. Jah, see on teatud tüüpi pärand, mida saame pikendada vanemate klassis mitme pärandiga.
  • Laiendatavus on üks pärandi eeliseid, mille abil saame põhiklassi omadust laiendada ilma, et ärinõuete täitmiseks muudatusi tehtaks või üldse mitte. Oletame alguses, et läheme vanemateklassi ainult ilma lasteklassita. Kuid vajaduse korral saame lisada lasteklassi, et hiljem oma ärivajadusi täita.
  • Ülevõtmine on selle pärimisfunktsiooni veel üks eelis, mille abil saame põhiklassi funktsiooni määratluse tuletatud klassiks ümber kirjutada, et teha muudatusi vastavalt ärinõuetele.
  • Vähem koodi - vahepeal on meil pärandist edasi liikudes võrreldes traditsioonilise kodeerimisega suhteliselt vähem koodi.
  • Pärimine võimaldas ka andmete peitmise funktsioone. Vanema klassi ainsa nõutava osa saame lasteklassi paljastada, kasutades erinevaid PHP juurdepääsu modifikaatoreid.
  • Toetage täielikult MVC-d - saame pärandi kontseptsiooni kasutades minna MVC poole.

Järeldus

Peaksime pärandit oma ettevõtte täitmiseks kasutama, kuna sellel on tavalise koodiga võrreldes mõned eelised. Pärandiga tegeledes peaksime hoolitsema andmeturbe eest. Andmete peitmise ja turbega tegelemiseks saame kasutada juurdepääsu modifikaatorit nagu privaatne, kaitstud. PHP ei toeta mitut pärimist.

Soovitatavad artiklid

See on juhend PHP pärandist. Siin käsitleme PHP-i pärimise tüüpe, st ühe-, mitmetasandilisi, hierarhilisi koos sobiva näidiskoodiga. Lisateabe saamiseks võite vaadata ka järgmist artiklit -

  1. Seansid PHP-s
  2. PHP-kompilaator
  3. PHP andmebaasi ühendus
  4. Ülekoormamine PHP-s
  5. Pythoni ülekoormamine

Kategooria: