⊗ppOpIhCn 30 of 107 menu

Konstruktor irsda OOP-də PHP-də

Irs alanda valideynin konstruktorunu yenidən təyin edə bilərsiniz. Gəlin bir nümunəyə baxaq. Tutaq ki, aşağıdakı valideyn sinfimiz var:

<?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; } } ?>

Tutaq ki, valideyn sinfindən aşağıdakı sinif miras alır:

<?php class Student extends User { } ?>

Tutaq ki, biz mirasçı sinifdə konstruktoru əlavə parametrlər əlavə etməklə genişləndirmək istəyirik:

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

Bu halda, biz mütləq ilk sətirdə valideynin konstruktorunu parent::__construct() vasitəsilə çağırmalıyıq:

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

parent::__construct() əmri mahiyyət etibarilə valideynin konstruktorudur. Buna görə də ona tələb olunan parametrləri ötürək:

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

İndi mirasçıda təhsil ilini mirasçının öz xüsusiyyətinə yazaq:

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

Təhsil ili üçün getter edək:

<?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; } } ?>

Tutaq ki, Employee sinfi bu dərsdəki User sinfindən miras alır.

Employee sinfində valideyn konstruktorunu yaş və maaş parametri əlavə etməklə yenidən təyin edin.

Yaş və maaş üçün getterlər edin.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČ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
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et