⊗ppOpIfPm 69 of 107 menu

Parâmetros em métodos de interfaces em POO em PHP

Ao descrever métodos em interfaces, é necessário especificar não apenas os nomes dos próprios métodos, mas também os parâmetros que eles aceitam.

Vamos ver um exemplo. Suponha que temos a interface iMath, que descreve uma classe para operações matemáticas de adição, subtração, multiplicação e divisão. Vamos supor que esta interface seja assim:

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

Atualmente, os métodos da nossa interface não aceitam nenhum parâmetro. E, na verdade, os métodos da classe que implementará esta interface também não deverão aceitar parâmetros, caso contrário, haverá um erro.

Vamos especificar os parâmetros dos métodos na nossa interface:

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

Agora, vamos escrever a implementação da nossa 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; } } ?>

Se tentarmos definir uma quantidade diferente de parâmetros em nossa classe - simplesmente não conseguiremos: o PHP retornará um erro. Dessa forma, não poderemos nem esquecer acidentalmente algum parâmetro, nem adicionar um extra por acidente.

Suponha que temos a seguinte interface iUser:

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

Crie uma classe User que irá implementar esta interface.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar