Qual a diferença entre Interfaces X Classes Abstratas

4 respostas
BMuniz

Olá Pessoal!

Encontrei em alguns foruns a diferença e não consegui aplicar no mundo real, gostaria de saber de vocês, teoricamente qual a diferença entre interfaces e classes abstratas?

Vlw pela atenção!!

4 Respostas

wandersonxs

Uso interface para expor assinatura de métodos comum ao objeto. Vantagem de classes implementarem diversas interfaces.
Uso classes abstratas para expor assinatura de métodos comuns e outros métodos particular de implementação por parte de quem está utilizando.

Internamente os métodos da interface são public abstract, lembra algo?

Apesar de ser VB.Net tem um link legal sobre o assunto.

http://www.macoratti.net/net_ica1.htm

Abraços
Wanderson 8)

ricardosoares

leia http://www.if.ufrgs.br/~betz/jaulas/aula5.htm

Jair_Rillo_Junior

Dê uma pesquisada no fórum, que esse assunto foi amplamente discutido

H

classes abstratas são classes primitivas ( que nao podem ser instanciadas, somente herdadas ).

Ex:

abstract class Humano {
}

class Mulher extends Humano {
}

a classe humano é só uma base pra classes que serão mais especificas que a classe humano.

e interface é uma forma de você “obrigar” uma classe a ter determinados atributos ou funções

Ex:

interface iHumano {

public void comer();

}
class Humano implements iHumano{

public void comer(){

// implementação da função

}

}

vc ta obrigando a classe humano a ter a função de comer.

Ai vc pergunta “pra q isso?”

Imagine que vc ta programando junto de outros 10 programadores.

vc obriga eles a seguirem esse padrão. ( creio que seja isso, pelo menos isso que me explicaram )

Criado 9 de dezembro de 2008
Ultima resposta 9 de dez. de 2008
Respostas 4
Participantes 5