Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida sobre o funcionamento da "$contrato->setTipo" dentro deste código.

As classes: Novo, emAndamento, Acertado e Concluído — não estendem a classe Contrato em lugar nenhum pelo que vi no código. Então como a: "$contrato->setTipo($contrato)" irá funcionar já que a 'setTipo' somente existe na classe Contrato?

Eu realmente não entendi como isso pode funcionar. Me explique.

2 respostas
solução!

Oi Sergio, posso explicar sim, claro. Php é uma linguagem que é interpretada em tempo de execução... O que acontece é o seguinte: quando vc executa o programa e chega nesse ponto, um objeto está em memória e alguém pede para invocar um método nele.. O php simplesmente verifica se aquele objeto responde para tal método, se o método existe então ele chama.

Se você usa o jeito o formal , herdando e tudo mais, também vai funcionar e o código fica mais limpo, mas não é obrigatório.. Para o bem e para o mau :).

Entendi. Então este método é opcional.

Valeu. Obrigado t+.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software