⊗ppOpIhCn 30 of 107 menu

Konstruktor by oorerwing in OOP in PHP

Met oorerwing kan jy die ouer se konstruktor ooraf. Kom ons kyk na 'n voorbeeld. Gestel ons het die volgende ouerklas:

<?php class User { private $name; private $surn; public function __construct($name, $surn) { $this->name = $name; $this->surn = $surn; } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

Gestel die volgende klas erf af van die ouerklas:

<?php class Student extends User { } ?>

Gestel ons wil in die afstammelingklas die konstruktor uitbrei deur bykomende parameters by te voeg:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { } } ?>

In hierdie geval moet ons noodwendig die ouer se konstruktor as eerste reël oproep met parent::__construct():

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); } } ?>

Die opdrag parent::__construct() is in wese die ouer se konstruktor. Laat ons dus die vereiste parameters daaraan oordra:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); } } ?>

Laat ons nou die studiejaar in die afstammeling in sy eie eiendom van die afstammeling aanmeld:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); $this->year = $year; } } ?>

Kom ons maak 'n getter vir die studiejaar:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); $this->year = $year; } public function getYear() { return $this->year; } } ?>

Gestel klas Employee erf af van klas User uit hierdie les.

Herdefinieer in klas Employee die ouer se konstruktor deur 'n parameter met ouderdom en salaris by te voeg.

Maak getters vir ouderdom en salaris.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp