Mas qual a grande necessidade de se criar uma Interface[RESOLVIDO]

4 respostas
leandroleo

Eu entendi que uma interface define um tipo de contrato, ou seja, o que uma classe deve fazer, mas não com deve fazer.
mas…

Qual a grande necessidade de se fazer isso?

vlw.

4 Respostas

rubensdemelo

http://www.guj.com.br/posts/list/15056.java

J

vou de dar um exemplo:

interface ITeste {
   void executa();
}
class Teste1 implements ITeste {
    void executa() {
        System.out.println("Teste 1");
    }

}
class Teste2 implements ITeste {
    void executa() {
        System.out.println("Teste 2");
    }
}
supondo outra classe auxiliar onde existe um método com a seguinte assinatura, usando a interface
void executaOExecuta(ITeste x) {
   x.executa();
}
supondo a mesma classe auxiliar onde existe um método com a seguinte assinatura, sem a interface, fazendo uso do Object... veja como faria para chamar o mesmo método executa() de qualquer uma das duas classes
void executaOExecuta(Object x) {
   if(x instanceof Teste1) {
      ((Teste1)x).executa();
   } else if(x instanceof Teste2) {
      ((Teste2)x).executa();
   }   
}

percebeu a diferença ?

tinorberto

A grande necessida e quanto temos classes que não tem relaçao de herança mas precisam te metodos e variaveis comuns.

sergiotaborda

leandroleo:
Eu entendi que uma interface define um tipo de contrato, ou seja, o que uma classe deve fazer, mas não com deve fazer.
mas…

Qual a grande necessidade de se fazer isso?

Tirar proveito de variáveis polimórficas. Variáveis Polimorficas é uma caracteristica poderosissima de linguagens OO… é toda a graça do assunto.

Criado 9 de setembro de 2009
Ultima resposta 9 de set. de 2009
Respostas 4
Participantes 5