LICENCE MIAGE

P.O.O : langage JAVA

 

Travaux dirigés

 


 

Série n°6 : Héritage (2)

 


This document is the API specification for the Java 2 Platform, Standard Edition, version 1.3.1.


EXERCICE 1 : Des villes, des capitales et des préfectures

EXERCICE 2 : Trier un tableau de villes

EXERCICE 3 : Plusieurs stratégies pour trouver le nombre inconnu

EXERCICE 4 : Manipuler la classe Vector

 


EXERCICE 1 : des villes, des capitales et des préfectures

Ville.java Capitale.java      Prefecture.java


a)      Une ville est caractérisée par son nom et son nombre d'habitants. Une ville doit obligatoirement avoir un nom et ne peut pas changer de nom. Le nombre d'habitants peut être inconnu. Une ville doit pouvoir se décrire. Définir la classe Ville.

b)      Une Capitale est une ville ; elle est caractérisée par son pays. Une Capitale doit pouvoir se décrire. Définir la classe Capitale.

c)      Une préfecture est une ville ; elle est caractérisée par son département. Une préfecture doit pouvoir se décrire. Définir la classe Préfecture.

d)      Utiliser la classe TestVille.java pour tester vos classes Ville, Capitale et Prefecture. Vous devez obtenir le résultat suivant :

-------

Ville : MENTON : 29266 habitants

-------

Capitale : PARIS : 6000000 habitants

Pays : FRANCE

-------

Capitale : ROME : 2643581 habitants

Pays : ITALIE

-------

Prefecture : NICE : 383400 habitants

Departement : ALPES-MARITMES

 


EXERCICE 2 : Trier un tableau de Villes    TestVille2.java


Modifier la classe  TestVille.java afin d'afficher les villes selon l'ordre décroissant du nombre d'habitants. On pourra utiliser la méthode de tri par sélection. Vous devez obtenir le résultat suivant :

-------

Ville : MENTON : 29266 habitants

-------

Prefecture : NICE : 383400 habitants

Departement : ALPES-MARITMES

-------

Capitale : ROME : 2643581 habitants

Pays : ITALIE

-------

Capitale : PARIS : 6000000 habitants

Pays : FRANCE

 


EXERCICE 3 : plusieurs stratégies pour trouver le nombre inconnu 

Test3.java         Jeux.java

EssaiAuClavier.java     EssaiStupide.java  EssaiIntelligent.java     Essai.java


On souhaite pouvoir utiliser différentes stratégies pour trouver le nombre inconnu.

a)      Coder une nouvelle classe EssaiStupide.java qui fait des propositions au hasard.

b)      Coder une nouvelle classe EssaiIntelligent.java qui propose la valeur médiane.

c)      Exploiter le mécanisme d'héritage pour que l'utilisateur puisse choisir parmi les trois stratégies.

 


EXERCICE 4 : Manipuler la classe Vector

Personne.java        Employe.java    Societe.java


Définir les trois classes Personne, Employe et Societe.

  • Une personne a un nom connu dès sa création et qui ne peut pas changer. Une personne est caractérisée par son numéro qui lui sera automatiquement attribué à sa création.
  • Un employé est une sorte de personne embauché dans une société qui lui verse un salaire ; il ne peut pas changer de société. Le salaire peut être augmenté d'un certain pourcentage. On doit pouvoir savoir si deux employés sont collègues (i.e. travaillent dans la même société).
  • Une société a un nom connu dès sa création et qui ne peut pas changer. Une société tient à jour la liste des employés qu'elle a embauché (vous devez utiliser la classe Vector de l'API et NON UN TABLEAU ; un avantage des Vector par rapport aux tableaux est que nous n'avez pas à indiquer une taille maximum lors de la création ; on peut DYNAMIQUEMENT ajouter ou retirer des éléments à un Vector ; de plus un Vector peut contenir des Objects de toute sorte!). Une société peut augmenter le salaire de tous ses employés. On peut obtenir la Masse Salariale d'une société.
  • Dans la classe Employe on tient à jour la liste des sociétés qui ont embauché au moins une personne (vous devez utiliser la classe Vector). Cette liste pourra être affichée.

 

Utiliser la classe Test.java pour tester vos classes Personne, Employe et Societe. Vous devez obtenir le résultat suivant :

Toto         Numero:5000  SOCIETE:IBM  SALAIRE:1000.0

Titi         Numero:5001  SOCIETE:HP   SALAIRE:1000.0

false

******************

SOCIETE:HP

Titi         Numero:5001  SOCIETE:HP   SALAIRE:1040.3

Tutu         Numero:5003  SOCIETE:HP   SALAIRE:1030.0

MASSE SALARIALE HP:2070.3

 

--------------------------

LISTE DES SOCIETES

--------------------------

******************

SOCIETE:IBM

Toto         Numero:5000  SOCIETE:IBM  SALAIRE:1000.0

Tata         Numero:5002  SOCIETE:IBM  SALAIRE:1000.0

MASSE SALARIALE IBM:2000.0

******************

SOCIETE:HP

Titi         Numero:5001  SOCIETE:HP   SALAIRE:1040.3

Tutu         Numero:5003  SOCIETE:HP   SALAIRE:1030.0

MASSE SALARIALE HP:2070.3


 

Haut du document