Interface X ABSTRACT POO
Num momento de brisa estou aqui pensando sobre a diferença de uma interface para um "abstract" e gostaria da opinião de vocês.
Eu devo usar uma interface quando eu quero "obrigar" meu objeto a trabalhar com todos aqueles métodos.
Já para usar uma classe abstrata eu devo ter em mente que eu não sou "obrigado" a trabalhar com todos os métodos que aquele tipo me oferece.
Exemplo básico.
Interface carro{
public function andar();
}
class Palio implements carro(){
public function andar(){
echo 'andando;'
}
}Todo carro anda até por que se não qual seria o ponto de ter um carro?
abstract class carro{
public function andar();
public function ligarArCondicionado(){
echo 'ar condicionado ligado';
}
}
class Palio extends carro(){
public function andar(){
echo 'andando;'
}
}aqui o ar condicionado já é algo em que o carro pode ter, é um comportamento exclusivo de um carro podemos dizer mas você não é obrigado a ter.
Vlw, galera.
Discussão (9)
Carregando comentários...