⊗ppOpIfPm 69 of 107 menu

Parametre i interfacemetoder i OOP i PHP

Ved beskrivelse af metoder i interfaces skal man angive ikke kun navnene på metoderne selv, men også de parametre, de accepterer.

Lad os se på et eksempel. Antag, at vi har et interface iMath, der beskriver en klasse for matematiske operationer: addition, subtraktion, multiplikation og division. Lad dette interface se sådan ud:

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

I øjeblikket accepterer metoderne i vores interface ingen parametre. Og faktisk skal metoderne i klassen, der vil implementere dette interface, heller ikke acceptere parametre, ellers vil der opstå en fejl.

Lad os angive parametrene for metoderne i vores interface:

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

Lad os nu skrive implementationen af vores interface:

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

Hvis man forsøger at angive et andet antal parametre i vores klasse - vil det simpelthen ikke lykkes: PHP vil give en fejl. På denne måde kan vi hverken ved et uheld glemme en parameter, eller ved et uheld tilføje en ekstra.

Antag, at vi har følgende interface iUser:

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

Lav en klasse User, som vil implementere dette interface.

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικά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
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis