634.1/PROGRAMMATION
Travauxpratiques–SérieP07
PeterDAEHNE&JohannSIEVERING 1/2Version2.0
Objectifs
Mettreenœuvrelagénéricité.
Concevoiruneclassedebibliothèquegénériquesurlabasedesesspécifications.
Réaliseruneapplicationmettantenœuvrelaclassedebibliothèqueconçue.
Problème
ConcevoiretréaliseruneclasseSuitegénériqueimplantantunesuiteordonnéed’élémentsquelconques.
Lasuiteesthomogène,c’est‐à‐direquetoussesélémentssontdemêmetype.Lenombred’élémentsdela
suiten’estpaslimité.
Lesméthodesd’accèsàclasseSuitesontdéfiniesainsi:
Nomdelaméthode Effet
SuiteConstructeur. Crée une Suite vide, c’est‐à‐dire ne contenant aucun
élément.
ajouterAjoute de nouveaux éléments à la fin de la Suite. Le nombre
d’élémentsajoutésestvariable(onpeutajouter0élément).
videTestesilaSuiteestvideounon.
premierRetourne le premier élément de la Suite. Lève l’exception
SuiteVideExceptionsilaSuiteestvide.
saufPremierRetournelaSuiteforméedel’ensembledesélémentssauflepremier.
Lèvel’exceptionSuiteVideExceptionsilaSuiteestvide.
La structure de stockage employée pour mémoriser les éléments de la Suiteestobligatoirementun
tableau.L’implantationdevotreclasseneferadoncréférenceàaucunestructurededonnéesfournieparla
bibliothèqueJava(hormislesclassesstandarddupackagejava.lang).
Àfaire
1. DévelopperlaclasseSuite(Suite.java)detellesortequ’ellesatisfasseauxspécificationsdonnéesdans
l’énoncéduproblème.Pourcela,vousdevrez:
Définirlasignatureduconstructeuretdechacunedesméthodesd’accès.
ChoisirunereprésentationdelaSuitevide.
Implantereffectivementlesméthodesd’accès.
2. Développerdeuxprogrammesillustrantlefonctionnementdesméthodesdelaclassedéveloppéeen1.
Le premier programme (TestInt.java) illustrera ce fonctionnement avec une Suited’Integers, le
second(TestPers.java)avecuneSuitedePersonnes.
3. Développerdesprogrammesillustrantlessituationsd’exceptiondanslesdeuxcasénoncésaupoint2.
(Suited’Integers,etSuitedePersonnes).
Sivouslejugeznécessaire,vousavezledroitdecréerdesclassessupplémentaires.