Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗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