⊗ppOpFnCl 63 of 107 menu

Синфҳои абстрактӣ дар ООП дар PHP

Бигзор шумо синфи User дошта бошед, ва аз он синфҳои Employee ва Student мерос гиранд.

Дар ин ҳол тасаввур мешавад, ки шумо объектҳои синфҳои Employee ва Student созед, вале объектҳои синфи User - насозед, зеро ин синф фақат барои гурӯҳбандӣ кардани хусусиятҳо ва усулҳои умумии ворисҳои худ истифода мешавад.

Дар ин ҳолат шумо метавонед эҷоди объектҳои синфи User-ро ба таври ҷабрӣ манъ кунед, то шумо ё дигар барномасоз ҷойҳое онҳоро ба таври тасодуфӣ наэҷоданд.

Барои ин чизҳое, ки ба онҳо синфҳои абстрактӣ гуфта мешавад, мавҷуданд. Синфҳои абстрактӣ намояндагӣ мекунанд аз синфҳое, ки барои мерос гирифтан аз онҳо пешбинӣ шудаанд. Дар ин ҳол объектҳои чунин синфҳоро наметавон эҷод кард.

Барои он, ки як синфро абстрактӣ эълон кунед, дар эълони он зарур аст, ки калимаи калидӣ abstract-ро нависед:

<?php abstract class User { } ?>

Пас, биёед амалсозии синфи абстрактии User-ро нависем. Бигзор он хосияти хусусии name дошта бошад, ва инчунин геттерҳо ва сеттерҳо барои он:

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

Кӯшиши эҷоди объекти синфи User хато медиҳад:

<?php $user = new User; // хато медиҳад ?>

Вале мерос гирифтан аз синфи мо имконпазир хоҳад буд. Биёед синфи Employee-ро созем, ки аз синфи абстрактии мо User мерос гирад:

<?php class Employee extends User { private $salary; public function getSalary() { return $this->salary; } public function setSalary($salary) { $this->salary = $salary; } } ?>

Объекти синфи Employee-ро эҷод кунем - ҳама чиз кор хоҳад кард:

<?php $employee = new Employee; $employee->setName('john'); // усули волидайн, яъне синфи User $employee->setSalary(1000); // усули шахсии худ, яъне синфи Employee echo $employee->getName(); // 'john'-ро мебарорад echo $employee->getSalary(); // 1000-ро мебарорад ?>

Синфи абстрактии Figure-ро созед, ки намояндагӣ мекунад аз як шакли геометрӣ (ҳандасӣ). Бигзор аз он синфҳо барои доира, росткунҷа ва мураббаъ мерос гиранд.

Тоҷикӣ
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
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан