Page 1
JAVA : Relations entre classes « Gestion d’un zoo »
public class Espece {
private String nom;
private String cri;
public Espece(String sonNom, String sonCri) { this.nom = sonNom;
this.cri = sonCri;
}
public String getNom() { return this.nom;
}
public String getCri() { return this.cri;
} }
public class Animal {
String nom;
boolean vivant;
int age;
Espece espece;
Animal(String sonNom, Espece sonEspece) { nom = sonNom;
vivant = true;
age = 0;
this.espece = sonEspece;
}
public String getNom() { return this.nom;
}
public Espece getEspece() { return this.espece;
}
public boolean estVivant() { return this.vivant;
}
public void vieillir() { if (vivant == true) {
this.age += 1;
}
}
public String toString() { if (vivant == true) {
return nom+" ("+espece.getNom()+") : Vivant et age de "+age+" an(s)";
} else {
return nom+" ("+espece.getNom()+") : Mort a l'age de "+age+" an(s)";
} }
public void mourir() { if (vivant == true) {
vivant = false;
} } }
Page 2 import java.util.*;
class Zoo {
private String directeur;
private ArrayList animaux;
public Zoo (String nouveauDirecteur) { this.directeur = nouveauDirecteur;
this.animaux = new ArrayList();
}
public void ajouterAnimal (Animal nouvelAnimal) { this.animaux.add(nouvelAnimal);
}
public ArrayList nourrir() {
ArrayList cris = new ArrayList();
for (int i=0; i < this.animaux.size() ; i++) {
Animal animalCourant = (Animal)(animaux.get(i));
if (animalCourant.estVivant()){
String cri="nourrir "+(animalCourant.getNom())+"
"+(animalCourant.getEspece().getCri());
cris.add(cri);
}
}
return cris;
}}
import java.util.*;
public class GestionZoo {
public static void main(String[] args) {
Espece lion = new Espece("Lion", "roar");
Espece oiseau = new Espece("Oiseau", "cui-cui");
Espece ane = new Espece ("Ane", "hi-han");
String text = "Le cri du "+lion.getNom()+" est: "+lion.getCri();
System.out.println(text);
Animal simba = new Animal("Simba", lion);
Animal coco = new Animal("Coco", oiseau);
Animal titi = new Animal("Titi", oiseau);
Animal bourriquet = new Animal("Bourriquet", ane);
simba.vieillir();
for (int i=0; i<4;i++) {
coco.vieillir();
}
bourriquet.mourir();
System.out.println(simba.toString());
System.out.println(coco. toString());
System.out.println(titi. toString());
System.out.println(bourriquet. toString());
Zoo daktari = new Zoo("James");
daktari.ajouterAnimal(simba);
daktari.ajouterAnimal(coco);
daktari.ajouterAnimal(bourriquet);
ArrayList cris = daktari.nourrir();
for (int i=0; i< cris.size() ; i++){
System.out.println(cris.get(i));
}
}}