⊗ppOpIhCOM 29 of 107 menu

გადაფარული მეთოდის გამოძახება OOP-ში PHP-ში

გადაფარვისას მემკვიდრე კარგავს წვდომას მშობელი კლასის გადაფარულ მეთოდზე. მაგრამ, მასზე წვდომა მაინც შესაძლებელია. ეს ხდება parent საკვანძო სიტყვის გამოყენებით, რომელიც მიუთითებს მშობელ კლასზე.

მოდით შევხედოთ მაგალითს, როდესაც შეიძლება დაგვჭირდეს წვდომა მშობელი კლასის მეთოდზე. დავუშვათ გვაქვს შემდეგი მშობელი კლასი:

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

დავუშვათ ჩვენ მემკვიდრე კლასში გადავაფარეთ მშობელი კლასის მეთოდი:

<?php class Student extends User { public function setName($name) { if (strlen($name) > 0) { $this->name = $name; } else { echo 'student name error'; } } } ?>

შეიძლება შეამჩნიოთ, რომ გადაფარულ მეთოდში პირობის შესრულებისას ფაქტობრივად შესრულებულია მშობელი კლასის მეთოდის კოდი. შედეგად მივიღებთ არასაჭირო კოდის დუბლირებას.

მისგან თავის დაღწევა შესაძლებელია, თუ გამოვიძახებთ მშობელი კლასის მეთოდს. მოდით გავაკეთოთ ეს:

<?php class Student extends User { public function setName($name) { if (strlen($name) > 0) { parent::setName($name); // მშობელი კლასის მეთოდი } else { echo 'student name error'; } } } ?>

მოცემულია შემდეგი კოდი:

<?php class User { private $age; public function setAge($age) { if ($age >= 0) { $this->age = $age; } else { echo 'need age more 0'; } } } class Employee extends User { public function setAge($age) { if ($age <= 120) { if ($age >= 0) { $this->age = $age; } else { echo 'need age more 0'; } } else { echo 'need age less 120'; } } } ?>

Employee კლასში შეასწორეთ ასაკის სეტერი, გამოიყენეთ მშობელი კლასის ორიგინალური მეთოდი.

ქართული
AfrikaansAzə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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა