⊗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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу