⊗ppOpIfPm 69 of 107 menu

Parametri în metodele interfețelor în OOP în PHP

La descrierea metodelor în interfețe este necesar să indicăm nu numai numele metodelor în sine, ci și parametrii pe care îi acceptă.

Să vedem un exemplu. Să presupunem că avem interfața iMath, care descrie o clasă pentru operațiile matematice de adunare, scădere, înmulțire și împărțire. Să presupunem că această interfață arată astfel:

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

În acest moment, metodele interfeței noastre nu acceptă nicieni parametri. Și, de fapt, metodele clasei care va implementa această interfață, de asemenea, nu ar trebui să accepte parametri, altfel va apărea o eroare.

Să specificăm parametrii metodelor în interfața noastră:

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

Să scriem acum implementarea interfeței noastre:

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

Dacă încercăm în clasa noastră să setăm un număr diferit de parametri - pur și simplu nu vom reuși: PHP va afișa o eroare. Astfel, nu vom putea nici să uităm din greșeală vreun parametru, nici să adăugăm accidental unul în plus.

Să presupunem că avem următoarea interfață iUser:

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

Creați o clasă User care va implementa această interfață.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge