⊗ppOpIfPm 69 of 107 menu

PHP-тегі ООП-да интерфейс әдістерінің параметрлері

Интерфейстерде әдістерді сипаттаған кезде тек әдістердің аттарын емес, сонымен қатар олардың қабылдайтын параметрлерін де көрсету қажет.

Мысал арқылы қарастырайық. Бізде қосу, алу, көбейту және бөлу сияқты математикалық амалдар үшін класты сипаттайтын iMath интерфейсі бар делік. Бұл интерфейс келесідей болсын:

<?php interface iMath { public function sum(); public function subtract(); public function multiply(); public function divide(); } ?>

Қазіргі уақытта біздің интерфейс әдістері ешқандай параметрлерді қабылдамайды. Және шын мәнінде, бұл интерфейсті іске асыратын класс әдістері де параметрлерді қабылдамауы керек, әйтпесе қате пайда болады.

Енді біздің интерфейсіміздегі әдістер параметрлерін көрсетейік:

<?php interface iMath { public function sum($a, $b); public function subtract($a, $b); public function multiply($a, $b); public function divide($a, $b); } ?>

Енді біздің интерфейсіміздің іске асырылуын жазайық:

<?php class Math implements iMath { public function sum($a, $b) { return $a + $b; } public function subtract($a, $b) { return $a - $b; } public function multiply($a, $b) { return $a * $b; } public function divide($a, $b) { return $a / $b; } } ?>

Егер біздің класымызда параметрлердің басқа санын беруге әрекеттенсек - бізге бұл сәтті болмайды: PHP қате шығарады. Осылайша біз кездейсоқ қандай да бір параметрді ұмытып қалуға да, кездейсоқ қосымша параметр қосуға да қабілетті болмаймыз.

Бізде келесідей iUser интерфейсі бар делік:

<?php interface iUser { public function setName($name); public function getName(); public function setAge($age); public function getAge(); } ?>

Бұл интерфейсті іске асыратын User класын жасаңыз.

Қазақ
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 файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау