⊗ppOpIhOPM 28 of 107 menu

Ծնողի մեթոդների վերասահմանումը OOP-ում PHP-ում

Ենթադասը կարող է վերասահմանել ծնողի մեթոդը՝ ստեղծելով նույնանուն մեթոդ: Եկեք նայենք օրինակով: Ենթադրենք, մենք ունենք հետևյալ ծնողական դասը:

<?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) { } } ?>

Որպես կանոն, ծնողի մեթոդների վերասահմանումը անհրաժեշտ է այդ մեթոդի վարքագիծը փոխելու կամ լրացնելու համար: Եկեք մեր դեպքում ավելացնենք անվան երկարության ստուգում.

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

Եկեք համոզվենք, որ կանչվում է հենց վերասահմանված մեթոդը: Սկզբում ստեղծենք ենթադասի օբյեկտ.

<?php $student = new Student; ?>

Այժմ կանչենք մեր մեթոդը՝ նրան փոխանցելով ճիշտ արժեք.

<?php $student->setName('john'); ?>

Այժմ կանչենք մեթոդը՝ փոխանցելով նրան սխալ արժեք: Արդյունքում կտեսնենք դուրս նետված բացառություն.

<?php $student->setName(''); // սխալ ?>

User դասում ստեղծեք tառքի և դրա արժեքը սահմանող մեթոդ տարիքի համար։

Employee դասում վերասահմանեք tարիքի համար դրա արժեքը սահմանող մեթոդը և դրա մեջ ստուգեք, որ տարիքը 18-ից 65 տարեկան է։

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել