18/10/07

Herança - Java

Andava eu a ver se resolvia um pequeno problema com as heranças do java quando encontro este pedaço de código:

public class Principal {

public static void main(String[] args) {

// FUNCIONA
try {
throw new Animal();
} catch (Animal ex) {
}

// FUNCIONA
try {
throw new Cachorro();
} catch (Mamifero ex) {
}

// NÂO FUNCIONA >> sapos não mamam!!!
try {
throw new Anfibio();
} catch (Mamifero ex) {
}

// NÃO FUNCIONA >>> você não pode mandar um Animal mamar,
// pois você não tem certeza se ele pode... pode ser um sapo!!
try {
throw new Animal();
} catch (Mamifero ex) {
}
}

}

class Animal extends Exception {

void come() {}
}

class Mamifero extends Animal {

void mama() {}
}

class Anfibio extends Animal {

void comportamentoEstranho() {} // hehe
}

class Cachorro extends Mamifero {

void late() {}
}

class Gato extends Mamifero {

void mia() {}
}


depois disto....fiquei sem palavras e fui jogar.....

1 comentário:

geek 010 disse...

Isto não é geekice.. é parvoíce.. isto deve ser obra de brasileiros.