Magna Concursos
4248166 Ano: 2026
Disciplina: TI - Desenvolvimento de Sistemas
Banca: IF-MT
Orgão: IF-MT

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

    <?php
        class Person {
            public $age;
            public function __construct() {
                $this->age = 0;
            }
            public function incrementAge() {
                $this->age += 1;
                $this->ageChanged();
            }
            protected function decrementAge() {
                $this->age -= 1;
                $this->ageChanged();
            }
            private function ageChanged() {
                echo "Age changed to {$this->age}\n";
            }
        }

        class SupernaturalPerson extends Person{
            public function incrementAge() {
                $this->decrementAge();
            }
        }

        $person = new Person;
        $person->incrementAge();
        $person->decrementAge();
        $person->ageChanged();
        $person = new SupernaturalPerson;

        $person->incrementAge();

    ?>

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:

 

Provas

Questão presente nas seguintes provas

Professor PEBTT - Informática

50 Questões