Vous êtes sur la page 1sur 1

TP n°11 – Adaptateur et Singleton

Département Informatique
IQ-S2 – M2103 – Bases de la programmation orientée objet

I : Patron « adaptateur » : Date


Nous avons besoin, pour la classe Journal de la question suivante, de méthodes pour lire la
date courante. Or l'API Java standard ne fournit pas exactement ce dont nous avons besoin,
mais une classe java.util.Calendar plus complète. Nous allons adapter cette classe à notre
problème.
Implémentez une interface IDate dans une classe Date qui utilisera java.util.Calendar; voir le
schéma UML suivant :

II : Patron « singleton » : journal


Dans de nombreux programmes il est nécessaire de tracer le fonctionnement dans un fichier
journal (on parle en anglais de log) : la classe s'occupant de ce travail doit bien entendu être
globale, il est donc judicieux d'en faire un singleton.
Le travail consiste donc à écrire un singleton journal qui devra être capable d'envoyer dans
un fichier des chaînes de caractères. A la création du journal on doit envoyer dans le fichier
la date et l'heure courante. Le nom du fichier sera donc précisé à chaque utilisation du
singleton. Le fichier journal ne doit pas être écrasé à chaque fois, mais poursuivi. Une
fonction efface() du journal permettra d'effacer le fichier. La fonction log() permettra
d'envoyer un message (préfixé par l'heure) dans le fichier journal.
Le diagramme UML du singleton demandé est le suivant :

Conseil : utilisez java.io.FileOutputStream pour l'écriture d'un fichier.


Testez votre singleton avec une fonction main simple.

Sylvain Rampacek Page 1

Vous aimerez peut-être aussi