Bonjour,

je débute avec Java dans le but d'une reconversion professionnelle. Après plusieurs semaines à découvrir un peu le bouzin, j'essaie d'aborder la POO et l'héritage avec divers exercices trouvés sur le net, comme celui-ci :

La classe Animal comporte deux sous-classes Mammifere et Poisson ; la classe Mammifere comporte elle-même deux nouvelles sous-classes : Chien et Homme. Modéliser et créer ces différentes classes en Java de telle sorte que la classe TestAnimal donnée comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
public class TestAnimal {
public static void main(String[] args) {
Animal[] animaux = new Animal[5];
animaux[0]=new Animal("Truc");;
animaux[1]=new Animal();
animaux[2]=new Chien("Medor");
animaux[3]=new Homme() ;
animaux[4]=new Homme ("Robert") ;
for (int i=0; i<5; i++) {
System.out.println(animaux[i].getType());
}
}
}
affiche le résultat suivant :

Je suis un animal de nom Truc.
Je suis un animal.
Je suis un animal de nom Medor. Je suis un mammifere. Je suis un chien.
Je suis un animal. Je suis un mammifere. Je suis un homme.
Je suis un animal de nom Robert. Je suis un mammifere. Je suis un homme.
J'ai bien compris que ça doit ressembler à ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
public class Animal { }
 
public class Mammifere extends Animal { }
 
public class Poisson extends Animal { }
 
public class Chien extends Mammifere { }
 
public class Homme extends Mammifere { }
Mais j'ai du mal à comprendre où placer et que doivent faire les différentes méthodes. Un getType uniquement dans Animal ou un par classe fille ?
Je ne vois pas à quoi doit ressembler le squelette des classes...