Um dos perigos de utilizar interfaces

5 respostas
MrDataFlex
package testes;

interface Cama {
    
}
interface Mesa {
    
}
interface Banho {
    
}
class Movel implements Cama,Mesa, Banho {
    
}
public class ok {
    
    public static void main(String... args) {
        Cama c = new Movel();
        Mesa m = new Movel();
        Banho b = new Movel();
        if (m instanceof Cama)
            System.out.println("Mesa é uma cama!?!? ¬¬"); //vai entrar
    }
    
}

5 Respostas

Deh
class Movel implements Cama,Mesa, Banho {
     
 }

Pela sua declaração da aqui, todo Movel é uma Cama, Mesa, Banho

Acho que você inverteu as coisas!

deveria ter um uma interface Movel, e classes Cama, Mesa e Banho que a implementam...

por ex:

public interface Movel { } 

public class Cama implements Movel { }

depois fazendo:

Movel m = new Cama();
if (m instanceof Banho) System.out.println("Não entra aqui =]");
T

Este tópico deveria chamar-se “um dos perigos de não entender direito o que é uma interface”. Veja se “Cama” é nome de uma interface :stuck_out_tongue:

J2Alex

Assunto: Um dos perigos de NÃO SABER utilizar interfaces.

Marck

J2Alex:
Assunto: Um dos perigos de NÃO SABER utilizar interfaces.

Comentário típico de quem não tem o que acrescentar. Um fórum serve para tirar dúvidas não p/ deboche. :?

G

Marck:
J2Alex:
Assunto: Um dos perigos de NÃO SABER utilizar interfaces.

Comentário típico de quem não tem o que acrescentar. Um fórum serve para tirar dúvidas não p/ deboche. :?

heheh boa estrutura de ifs nas assinatura, Marck !! :smiley:
just like that!!!

Criado 12 de junho de 2007
Ultima resposta 12 de jun. de 2007
Respostas 5
Participantes 6