⊗ppOpIfPm 69 of 107 menu

Parametri v metodah vmesnikov v OOP v PHP

Pri opisovanju metod v vmesnikih je potrebno določiti ne le imena samih metod, ampak tudi parametre, ki jih sprejemajo.

Poglejmo si na primeru. Recimo, da imamo vmesnik iMath, ki opisuje razred za matematične operacije seštevanja, odštevanja, množenja in deljenja. Naj bo ta vmesnik viden takole:

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

Trenutno metode našega vmesnika ne sprejemajo nikakršnih parametrov. In pravzaprav metode razreda, ki bo implementiral ta vmesnik, prav tako ne smejo sprejemati parametrov, sicer bo prišlo do napake.

Določimo parametre metod v našem vmesniku:

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

Zapišimo zdaj implementacijo našega vmesnika:

<?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; } } ?>

Če bi poskušali v našem razredu določiti drugačno količino parametrov - nam tega preprosto ne bi uspelo: PHP bi izdal napako. Tako ne bomo mogli niti po naključju pozabiti katerega parametra, niti po naključju dodati odvečnega.

Recimo, da imamo dan tak vmesnik iUser:

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

Naredite razred User, ki bo implementiral ta vmesnik.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni