Aprenda a sobrescrever métodos herdados em PHP

Veja como sobrescrever métodos herdados em PHP e personalizar funcionalidades de classes derivadas.

Como sobrescrever métodos herdados em PHP?

A sobrescrita de métodos (override) em PHP permite que uma classe filha modifique o comportamento de um método herdado de uma classe pai. Isso possibilita a personalização do código sem alterar a classe original.

Criando uma Classe Base e uma Classe Herdeira com Sobrescrita

<?php
class Animal {
    public function fazerSom() {
        return "O animal emite um som";
    }
}

class Cachorro extends Animal {
    public function fazerSom() {
        return "O cachorro late!";
    }
}
?>

Criando um Objeto e Testando a Sobrescrita

<?php
$meuCachorro = new Cachorro();
echo $meuCachorro->fazerSom();
?>

Explicação do Código

  • Criamos a classe Animal com o método fazerSom().
  • A classe Cachorro herda de Animal e sobrescreve o método fazerSom() para fornecer um comportamento específico.
  • Quando chamamos $meuCachorro->fazerSom(), o PHP executa o método sobrescrito na classe Cachorro, e não o método original de Animal.

A sobrescrita de métodos é essencial para criar código flexível e modular. Esse recurso permite modificar o comportamento de classes herdadas sem alterar a estrutura original, garantindo que um sistema possa evoluir sem afetar o código existente.

Algumas aplicações:

  • Personalização de comportamentos em classes derivadas
  • Facilidade na manutenção e reutilização de código
  • Implementação de funcionalidades específicas sem modificar a classe base
  • Aplicação de padrões de design como Factory e Strategy

Dicas para quem está começando

  • Para sobrescrever um método, basta declarar um método com o mesmo nome na classe filha.
  • Utilize parent::metodo() caso precise chamar o método original da classe pai.
  • Evite sobrescrever métodos desnecessariamente para manter a clareza do código.
  • Teste diferentes cenários para entender o comportamento da sobrescrita.
  • Utilize final na classe pai se quiser evitar que métodos sejam sobrescritos.

Contribuições de Daniel Moreira

Compartilhe este tutorial: Como sobrescrever métodos herdados em PHP?

Compartilhe este tutorial

Continue aprendendo:

O que é herança em PHP e como usá-la?

Veja como a herança em PHP permite que uma classe reutilize atributos e métodos de outra classe.

Tutorial anterior

O que é polimorfismo em PHP e como implementá-lo?

Veja como o polimorfismo em PHP permite a reutilização de métodos com diferentes comportamentos em classes derivadas.

Próximo tutorial