Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

PHP - Herança e polimorfismo

Neste post, vamos mostrar como usar herança e Polimorfismo em PHP, incluindo exemplos práticos (você pode ver o que já publicamos sobre o PHP aqui).


Esses dois elementos que iremos tratar hoje dizem respeito a base do paradigma de orientação a objetos, entende-los é fundamental para criar boas aplicações com recursos reutilizáveis e também compreender recursos e complementos externos a nossa aplicação, sejam das linguagens de programação com as quais estamos lidando como também o uso de plugins e extensões de terceiros.


Herança em PHP

A herança é um mecanismo que permite que uma Classe herde as propriedades e métodos de outra classe. Isso permite a reutilização de código e a organização hierárquica de classes. Por exemplo, a seguinte classe "Estudante" herda da classe "Pessoa" e adiciona a propriedade "matricula":

    
class Estudante extends Pessoa {
    public $matricula;
}

Polimorfismo em PHP

O polimorfismo é um mecanismo que permite que objetos de classes diferentes sejam tratados de forma genérica. Isso é possível através da implementação de interfaces, que definem um conjunto comum de métodos que devem ser implementados pelas classes que as implementam. Por exemplo, a seguinte interface "Veiculo" define o método "mover":

    
interface Veiculo {
    public function mover();
}

E a classe Automovel implementa essa interface e define o método mover de forma específica.

    
class Automovel implements Veiculo{
    public $marca;
    public $modelo;
    public $ano;
    private $ligado = false;
    
    public function __construct($marca, $modelo, $ano) {
        $this->marca = $marca;
        $this->modelo = $modelo;
        $this->ano = $ano;
    }
    
    public function mover(){
        if($this->ligado){
            echo "O carro está se movendo";
        }else{
            echo "Ligue o carro antes de movê-lo";
        }
    }
    
    public function ligar() {
        $this->ligado = true;
    }
    public function desligar() {
        $this->ligado = false;
    }
    public function mostrarDados() {
        echo "Marca: " . $this->marca . "\n";
    }
}

Dessa forma, é possível tratar objetos de diferentes classes como objetos de uma classe genérica, e chamar o método "mover" de forma genérica, independente da classe específica do objeto.


Conclusão

Juntos, herança e polimorfismo permitem a construção de sistemas orientados a objetos mais flexíveis e reutilizáveis, poupando tempo na compreensão e manutenção das funcionalidades.

  • Site oficial do PHP
  • No Wikipédia
  • Herança e polimorfismo


This post first appeared on PROGRAMERO, please read the originial post: here

Share the post

PHP - Herança e polimorfismo

×

Subscribe to Programero

Get updates delivered right to your inbox!

Thank you for your subscription

×