Héritage avec classe Terminal
Petit souci je dois ecrire une methode depuis la classe zoo ,qui doit afficher tous les individus du zoo c'est a dire otarie et lion ,mais je n'arrive a acceder au methode affiche _renseignement _lion et otarie depuis zoo..qui peut m'eclairer
Merci
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
class animal {
int indentifiant;
boolean male;
int age;
static int compteur_identifiant=0;
public animal(boolean m_ou_f,int a ) { // question1
this.male=m_ou_f;
this.age=a;
this.indentifiant=animal.compteur_identifiant;
animal.compteur_identifiant++;
}
}
class lion extends animal {
public lion(boolean m_ou_f,int a ) { // question2
super( m_ou_f, a ); // appelle le constructeur de la classe de base avec super
}
void affiche_renseignement_lion() {
Terminal.ecrireStringln("je suis un lion de "+this.age+","+"mon identifiant est "+this.indentifiant);
}
}
class otarie extends animal {
public otarie(boolean m_ou_f,int a ) { //question2
super( m_ou_f, a ); // appelle le constructeur de la classe de base avec super
}
void affiche_renseignement_otarie() {
Terminal.ecrireStringln("je suis un otarie de "+this.age+","+"mon identifiant est "+this.indentifiant);
}
}
class zoo {
animal [] tab=new animal[5]; // chaque case de tab contient une reference vers un type animal
void affiche_le_zoo(zoo z) {
for(int i=0;i<z.tab.length;i++) {
}
}
}
public class testzoo {
public static void main( String [] args ) {
zoo z=new zoo(); // z est de type zoo c'est a dire constitué d'un tableau de type animal
String otarie="otarie";
String lion="lion";
String nomanimal;
boolean rep;
for(int i=0;i<z.tab.length;i++) {
Terminal.ecrireStringln("lion ou otarie ??");
nomanimal=Terminal.lireString();
if(nomanimal.equals(lion)) {
Terminal.ecrireStringln("male ou femelle");
rep=Terminal.lireBoolean();
Terminal.ecrireStringln("saisissez l'age");
z.tab[i]=new lion(rep,Terminal.lireInt());
} else if(nomanimal.equals(otarie)) {
Terminal.ecrireStringln("male ou femelle");
rep=Terminal.lireBoolean();
Terminal.ecrireStringln("saisissez l'age");
z.tab[i]=new lion(rep,Terminal.lireInt());
} else Terminal.ecrireStringln("resaisir un nom d'animal correcte ");
nomanimal=Terminal.lireString();
}
}
} |
suite heritage classe terminale
bah un objet de type zoo contient un tableau de type animal ,chaque case pointe vers un objet de type animal donc on peut y inserer un objet de type lion et otarie qui sont eux meme etendu de la classe animal..
Mais depuis zoo je vois pas comment faire une methode qui affiche tous les individus du zoo en reutilisant les methodes de lion et otarie sauf si zoo je l'etend de la classe lion ou otarie ..mais sans cela je vois pas..;)
Merci oh faites de ta reponse
SUITE HERITAGE CLASSE TERMINAL
Merci...j'ai résolu le probleme....;)
SUITE HERITAGE CLASS TERMINAL
Par contre j'ai jamais utilisé la class arraylist..je suis parti voir du coté de sun..j'y pige rien du tout..
As tu un exemple de declaration,initilisation,et parcours d'un tableau dynamique
Merci?;)