Junior
O que é uma extensão (extend) no contexto do PHP?
sobes.tech IA
Resposta da IA
A extensão, ou herança, em PHP é um mecanismo que permite a uma classe (classe filha ou subclasse) herdar propriedades e métodos de outra classe (classe pai ou base).
A palavra-chave extends é usada para indicar a classe pai.
Vantagens da herança:
- Reutilização de código: Não é necessário escrever o mesmo código várias vezes.
- Extensibilidade: A classe filha pode adicionar novas propriedades e métodos, ou sobrescrever os existentes da classe pai.
- Polimorfismo: Objetos de diferentes classes podem ser tratados como objetos de uma classe pai comum.
Exemplo:
<?php
class Animal {
public function eat() {
echo "O animal come.";
}
}
class Dog extends Animal {
public function bark() {
echo "O cão late.";
}
}
$dog = new Dog();
$dog->eat(); // Chamada do método da classe pai
$dog->bark(); // Chamada do método da classe filha
?>
A classe filha não herda:
- Propriedades e métodos privados (embora existam no objeto, não podem ser chamados diretamente da classe filha).
- O construtor da classe pai não é chamado automaticamente ao criar um objeto da classe filha, a menos que seja explicitamente indicado com
parent::__construct().