⊗ppOpIfPm 69 of 107 menu

Parametri u metodama interfejsa u OOP u PHP

Prilikom opisa metoda u interfejsima, potrebno je naznačiti ne samo imena samih metoda, već i parametre koje oni prihvataju.

Pogledajmo na primeru. Neka imamo interfejs iMath, koji opisuje klasu za matematičke operacije sabiranja, oduzimanja, množenja i deljenja. Neka ovaj interfejs izgleda ovako:

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

Trenutno metode našeg interfejsa ne prihvataju nijedan parametar. I zapravo, metode klase koja će implementirati ovaj interfejs, takođe neće smeti da prihvataju parametre, inače će biti greške.

Hajde da navedemo parametre metoda u našem interfejsu:

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

Napišimo sada implementaciju našeg interfejsa:

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

Ako pokušamo u našoj klasi da postavimo drugačiji broj parametara - jednostavno nam to neće uspeti: PHP će prijaviti grešku. Na taj način nećemo moći ni da slučajno zaboravimo neki parametar, niti da slučajno dodamo suvišan.

Neka nam je dat ovakav interfejs iUser:

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

Napravite klasu User, koja će implementirati ovaj interfejs.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij