⊗ppOpIfPm 69 of 107 menu

Parámetros en métodos de interfaces en POO en PHP

Al describir métodos en interfaces, es necesario indicar no solo los nombres de los métodos mismos, sino también los parámetros que aceptan.

Veamos un ejemplo. Supongamos que tenemos una interfaz iMath que describe una clase para operaciones matemáticas de suma, resta, multiplicación y división. Supongamos que esta interfaz se ve así:

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

Actualmente, los métodos de nuestra interfaz no aceptan ningún parámetro. Y, de hecho, los métodos de la clase que implementará esta interfaz, tampoco deberán aceptar parámetros, de lo contrario, habrá un error.

Especificamos los parámetros de los métodos en nuestra interfaz:

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

Escribamos ahora la implementación de nuestra interfaz:

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

Si intentamos establecer una cantidad diferente de parámetros en nuestra clase, simplemente no lo lograremos: PHP generará un error. Así no podremos ni olvidar accidentalmente algún parámetro, ni agregar accidentalmente uno extra.

Supongamos que tenemos una interfaz iUser como esta:

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

Cree una clase User que implemente esta interfaz.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar