⊗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ščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј