Uvod u nasljeđivanje u PHP-u

Nasljeđivanje je način proširenja postojeće klase funkcionalnosti u novostvorenoj klasi. U novostvorenu klasu možemo dodati i neke dodatne funkcionalnosti, osim što proširujemo funkcionalnost osnovne klase. Kada nasljeđujemo jedan razred, kažemo da je naslijeđena klasa podređena klasa (podklasa) i od koje nasljeđujemo nazivamo roditeljska klasa. Roditeljska klasa je poznata i kao osnovna klasa. To je način koji omogućuje bolje upravljanje programskim kodom i ponovnom upotrebom koda. Ideja korištenja nasljeđivanja sastoji se u boljem upravljanju kodom i ponovnom upotrebom koda. U ovoj ćemo temi upoznati nasljeđivanje u PHP-u.

Vrste nasljeđivanja u PHP-u

PHP podržava razne vrste nasljeđivanja poput JAVA. Donja tablica prikazuje popis vrsta nasljeđivanja i status podrške u PHP-u.

Vrsta nasljeđivanjaPodrška u PHP-u
Jedno nasljeđivanjeDA
Nasljeđivanje na više nivoaDA
Hijerarhijsko nasljeđivanjeDA
Višestruko nasljeđivanjeNE

1. Pojedinačno nasljeđivanje

PHP podržava pojedinačno nasljeđivanje. Pojedinačno nasljeđivanje koncept je u PHP-u u kojem jednu klasu može naslijediti samo jedna klasa. Moramo imati dvije klase između ovog procesa. Jedan je osnovna klasa (roditeljska klasa), a drugi sam razred djece. Shvatimo isto s primjerom. Popularno je poznato kao jednostavno nasljeđivanje. Ova vrsta nasljeđivanja na jeziku PHP ostaje ista kao i JAVA, C ++, itd.

Kodirati:

<_?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 je roditelj, a dijete je ime dječje klase.

Izlaz:

2. Nasljeđivanje na više nivoa

PHP podržava multilevelno nasljeđivanje. Kod ove vrste nasljeđivanja imat ćemo više od 2 razreda. Kod ove vrste nasljeđivanja, nadređena klasa će naslijediti dječju klasu, a tada će to dječja klasa naslijediti. Ova vrsta nasljeđivanja na PHP jeziku ostaje ista kao i C ++ itd.

Kodirati:

<_?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();
?>

Izlaz:

3. Hijerarhijsko nasljeđivanje

PHP podržava hijerarhijsko nasljeđivanje. Hijerarhijsko nasljeđivanje je vrsta nasljeđivanja u kojoj se program sastoji od jednog roditelja i više od jedne dječje klase. Shvatimo isto s ovim primjerom. Ova vrsta nasljeđivanja na jeziku PHP ostaje ista kao i JAVA, C ++, itd.

Kodirati:

<_?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();
?>

Izlaz:

Imamo jednu roditeljsku klasu koja se zove ParentClass i dvije dječje klase dijete_1 i dijete_2. Dani scenarij nasljeđivanja naziva se hijerarhijsko nasljeđivanje.

Važnost nasljeđivanja u PHP-u

Važnost nasljedstva je puno više, jer dolazi do ogromnih prednosti s njim.

  • Ponovna upotreba koda jedna je od najčešće korištenih u nasljeđivanju, osnovna klasa ostaje onakva kakva je između procesa. Kao što vidimo u gornjem primjeru svih nasljeđivanja, kod se ponovno koristi iz jedne klase u drugu. Ne treba od nas tražiti da ponovo i opet pišemo istu stvar.
  • Baznu klasu mogu koristiti mnogi izvedeni razredi u hijerarhiji klasa. Da, ovo je vrsta nasljeđivanja kod koje možemo ići na proširenje u roditeljskoj klasi s višestrukim nasljeđivanjem.
  • Proširenost je jedna od prednosti nasljeđivanja u kojem možemo proširiti značajku osnovne klase bez malo ili nikakvih promjena da bismo ispunili poslovne zahtjeve. Pretpostavimo u početku da idemo s roditeljskom klasom samo bez klase djece. No u slučaju potrebe možemo naknadno dodati dječji razred da bismo ispunili poslovne potrebe.
  • Poništavanje je još jedna prednost ove značajke nasljeđivanja u kojoj možemo prepisati definiciju funkcije osnovne klase u izvedenu klasu radi izmjena prema poslovnim zahtjevima.
  • Manja količina koda - u međuvremenu ćemo imati manje koda usporedno dok napredujemo s nasljeđivanjem u usporedbi s tradicionalnim načinom kodiranja.
  • Nasljeđivanje je također omogućilo i skrivanje podataka. Možemo izložiti jedini potrebni dio roditeljske klase dječjoj klasi koristeći različite PHP pristupne modifikatore.
  • Potpuno podržavajte MVC - možemo ići za MVC koristeći koncept nasljeđivanja.

Zaključak

Nasljedstvo bismo trebali iskoristiti kako bismo ispunili svoje poslovanje, jer ima neke dodatne prednosti u odnosu na uobičajeni kod. Trebamo brinuti o sigurnosti podataka dok se bavimo nasljeđivanjem. Možemo koristiti modifikator pristupa kao privatni, zaštićeni da bismo se bavili skrivanjem podataka i sigurnošću podataka. PHP ne podržava više nasljeđivanja.

Preporučeni članci

Ovo je vodič za nasljeđivanje u PHP-u. Ovdje ćemo raspravljati o vrstama nasljeđivanja u PHP-u, tj. Jednoslojnom, višerazinskom, hijerarhijskom s odgovarajućim uzorkom koda. Možete pogledati i sljedeći članak da biste saznali više -

  1. Sjednice u PHP-u
  2. PHP prevodilac
  3. PHP baza podataka
  4. Preopterećenje u PHP-u
  5. Python preopterećenje

Kategorija: