Laboratoire 3¶
1. Objectifs¶
- Acquisition des éléments distinctifs du langage de programmation Java : tableaux, chaînes de caractères, énumérations, référence
nullet méthodetoString. - Utilisation de membres de classes statiques (pas besoin de new.
- Utilisation des classes et des objets.
2. Manipulations¶
Créer un nouveau projet IntelliJ IDEA.
Codifier votre solution dans le paquetage :
3. Réalisation¶
a) Représentation d’un étudiant¶
- Codifiez la classe
Etudiantavec les propriétés suivantes :nom,prénom,dateNaissanceetsexe. - Une instance de la classe doit être complète, ajoutez par conséquent les accesseurs nécessaires.
- Le constructeur doit respecter l’ordre des paramètres suivant :
nom,prénom,dateNaissanceetsexe. - Utilisez une énumération déclarée et définie dans la classe
Etudiantpour représenter le sexe d’un étudiant (Homme,Femme). - Ajouter une méthode
getAge()qui retourne l’âge de l’étudiant en années. - Ajouter une méthode
getCodePermanent()qui retourne le code permanent selon la nomenclature :
👉 Code permanent UQAM
Composition du code permanent :
- Les 3 premières lettres du nom.
- La première lettre du prénom.
- Le jour de naissance (+62 si année ≥ 2000).
- Le mois de naissance (+50 pour sexe féminin).
- L’année de naissance.
- Deux derniers chiffres aléatoires.
Exigence supplémentaire :
- Complétez la classe avec une méthode
toString()qui retourne une chaîne formatée comme dans les exemples fournis.
b) Dé-sérialisation d’un étudiant¶
- Ajoutez une méthode statique
parsedans la classeApplication. - Cette méthode reçoit en paramètre une chaîne qui représente un étudiant et retourne une instance de
Etudiant. - Exemple de chaîne :
- La méthode doit :
- Reconnaître les propriétés (ordre aléatoire).
- Séparer les propriétés par
;(point-virgule). - Séparer chaque propriété en clé/valeur avec
:(deux-points). - Utiliser
split()de la classeString.
c) Représentation des constantes¶
- Créez la classe
Constantesavec les constantes suivantes :
| Nom de la constante | Valeur de la constante |
|---|---|
| NOM | NOM |
| PRENOM | PRENOM |
| DATE_NAISSANCE | NAISSANCE |
| SEXE | SEXE |
- La classe
Constantes:- Ne doit contenir que des membres statiques.
- Ne doit pas être instanciable (constructeur privé).
Contraintes¶
- Toutes les classes sont dans le paquetage
laboratoire3. - Le point d’entrée est dans la classe
Application. - La classe
Constantesne doit pas pouvoir être instanciée.