Na linguagem PHP, a declaração da interface “otpx” que deri...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: D - interface otpx extends xpto
Vamos entender o motivo dessa resposta ser a correta e abordar um pouco sobre interfaces em PHP. Em programação orientada a objetos, uma interface é um contrato que define um conjunto de métodos públicos sem implementar suas funcionalidades. As classes ou interfaces que assinarem esse contrato, no caso de interfaces, devem implementar todos os métodos definidos pela interface.
No PHP, as interfaces são definidas usando a palavra-chave interface e a herança entre interfaces é feita mediante o uso da palavra-chave extends. Isso é análogo à herança de classes, mas quando estamos lidando com interfaces, não é uma "herança" no sentido tradicional (pois não há implementação sendo herdada), mas sim a extensão de um contrato.
A opção A está incorreta porque utiliza a palavra-chave class, que é usada para definir classes e não interfaces. A opção B também incorre no mesmo erro e, além disso, usa a palavra implements que é usada por classes quando querem implementar a interface, não por outras interfaces.
A opção C está errada porque, apesar de usar a palavra-chave interface, usa também a palavra implements, o que é um equívoco, já que interfaces não implementam outras interfaces, elas as estendem.
A opção D é a correta pois expressa corretamente a relação de herança entre interfaces em PHP, onde a interface "otpx" estende a interface "xpto" usando a sintaxe correta interface otpx extends xpto.
Por fim, a opção E está errada, pois inverte a relação de herança, sugerindo que a interface "xpto" é que deveria implementar "otpx", o que é conceitualmente incorreto porque, como dito anteriormente, interfaces não implementam, elas definem um contrato a ser implementado ou estendido.
Espero que a explicação tenha ajudado a esclarecer como as interfaces funcionam em PHP e por que a alternativa D é a correta nesta questão. Se tiver mais alguma dúvida, fique à vontade para perguntar!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
classes implementam interfaces
classes estendem classes
interfaces estendem interfaces
✍ GABARITO(D) ✅
- No PHP, uma classe pode estender uma única classe, podendo implementar qualquer número de interfaces. Q1147754
- Sobre interfaces na linguagem Java, é correto afirmar que uma interface pode estender o conteúdo de outra interface, mas não pode implementá-la.Q314836
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo