Vous êtes sur la page 1sur 2

TP Java 06 : Les relations entre classe - associations

1 sur 2

http://pchochois.free.fr/Annee0506/IG12/TP_Java06.htm

21/01/06

JAVA TP n 6 : Relations entre classes


Gestion dun zoo
Un zoo souhaite pouvoir grer lensemble de son parc animalier. Pour cela, il dveloppe une application base sur un langage
de programmation objet. Lensemble des classes mettre en uvre peut se schmatiser grce au diagramme UML suivant :

1-Classe Espece :

Ecrivez la classe Espece munie des attributs et mthodes suivants :


Attributs privs :

nom qui dsigne le nom de lespce (Oiseau, Lion etc)


cri qui dsigne le cri des animaux de lespce concerne ("Cui-cui", "Roar" etc)

Mthodes publiques :

public Espece(String sonNom, String sonCri)


=> constructeur qui valorise le nom et le cri de lespce.

public getNom()
=> retourne le nom de lespce.

public getCri()
=> retourne le cri associ lespce.

Ecrivez une classe la classe GestionZoo avec une mthode main qui cre 3 espces danimaux et les affiche lcran
(en utilisant les getteurs de la classe Espece)

Exemple de rsultat obtenir :


C:>java GestionZoo
Le cri du Lion est: roare
/

2-Classe Animal :

Ecrivez la classe Animal munie des attributs et mthodes suivants :


Attributs privs :

nom : Chane => nom de lanimal

age : Entier => age de lanimal

vivant : Boolen => dsigne si lanimal est vivant ou non


Attention : Pour coder en Java la relation entre la classe Espece et la classe Animal, vous devez ajouter
un attribut !
-

Mthodes publiques :

public Animal(String sonNom, espece sonEspece)


=> constructeur qui valorise le nom et lespce de lanimal

05/03/2015 12:58

TP Java 06 : Les relations entre classe - associations

2 sur 2

http://pchochois.free.fr/Annee0506/IG12/TP_Java06.htm

public String getNom()


=> retourne le nom lanimal.

public boolean estVivant()


=> indique si lanimal est vivant.

public Espece getEspece()


=> retourne lobjet Espece associ lanimal.

public String toString()


=> retourne le nom, le nom de lespce, le statut (vivant ou mort) ainsi que lage (courant sil est vivant, de
dcs sil est mort) de lanimal.

public void vieillir()


=> fait vieillir lanimal dun an sil est vivant.

public void mourir()


=> fait mourir lanimal sil tait vivant.

Compltez votre programme GestionZoo pour :


crer quelques animaux
faire vieillir un animal dun an
faire vieillir un animal de 4 ans
faire mourir un animal
afficher les animaux lcran (en utilisant la mthode donnerInfos )

Exemple de rsultat obtenir :


C:>java GestionZoo
/
Simba (Lion) : Vivant et age de 1 an(s)
Coco (Oiseau) : Vivant et age de 4 an(s)
Titi (Oiseau) : Vivant et age de 0 an(s)
Bourriquet (Ane) : Mort a l'age de 0 an(s)
/

3-Classe Zoo :

Ecrivez la classe Zoo munie des attributs et mthodes suivants :


Attributs privs :

directeur : Chane
Attention : Pour coder en Java la relation entre la classe Zoo et la classe Animal, vous devez ajouter un
attribut !
-

Mthodes publiques :

public Zoo(sonDirecteur : Chane)


=> constructeur qui valorise le nom de directeur

public void ajouterAnimal(nouvelAnimal : animal)


=> ajoute nouvelAnimal la collection danimaux du zoo courant

public ArrayList nourrir()


=> retourne une collection contenant des chanes de caractres. Chaque chane de caractres contient le
nom de lanimal et le cri (de joie) quil a pouss lorsquon la nourri (Attention, les animaux morts ne
crient pas et ne mangent pas).

Compltez votre programme GestionZoo pour :


crer un zoo
faire entrer quelques animaux au zoo
nourrir les animaux
afficher les cris de joie des animaux quont pouss les animaux lors du repas

Exemple de rsultat obtenir :


C:>java GestionZoo
/
nourrir Simba roar
nourrir Coco cui-cui
/

05/03/2015 12:58