Considere o programa desenvolvido na linguagem PHP (php.net)...

Próximas questões
Com base no mesmo assunto
Q4282198 Programação

Considere o programa desenvolvido na linguagem PHP (php.net):  




Imagem associada para resolução da questão




Sobre o programa acima:


I. A instrução da linha 28 não pode ser executada, pois o método decrementAge() só pode ser chamado por métodos dentro da mesma classe ou de classes que a herdarem.

Il. A instrução da linha 29 não pode ser executada, pois o método ageChanged() só pode ser chamado por métodos dentro da mesma classe.

Ill. Na linha 22, o método decrementAge() pode ser chamado dentro da classe SupernaturalPerson, pois ela está herdando os métodos da classe Person.


Está correto o que se afirma em: 

Alternativas

Comentários

Veja os comentários dos nossos alunos

Questão passível de recurso. 

A afirmativa II está incorreta: apesar de ageChanged() ser private, a linha 29 nem chega a ser executada. A execução é interrompida na linha 28, que gera erro fatal de acesso, pois decrementAge() é protected e está sendo chamado fora da classe.

Embora a afirmação da II ser válida isoladamente, no contexto da execução do código apresentado a justificativa não é uma explicação coerente, pois não é que a linha 29 não pode ser executada é que a execução do programa nunca vai chegar nela.

Logo, estão corretas apenas I e III — alternativa D.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo