Académique Documents
Professionnel Documents
Culture Documents
Pour atteindre ces objectifs, nous allons traiter deux applications lors de ce TP.
I. Travaux en classe
A.U : 2023-2024Page 1
Ecrire un programme principal permettant de créer une instance de TabSalaries et de
l’ajouter des salariés de différents types, d’afficher les salariés, de supprimer un salarié
suivi d’un test d’affichage, tester le polymorphisme par affichage des salaires de chaque
salarié, et fin afficher le total des payes à verser.
Pour débuter nous créerons un « POM project » (ceci permet de diviser en modules)
intitulé « gestionEntrprise » ;
A.U : 2023-2024Page 2
Ouvrir « Modules », que remarquez-vous ?
Ouvrir « pom.xml » et examiner.
A.U : 2023-2024Page 3
Re-Ouvrir le même fichier « pom.xml » vu précédemment. Que remarquez-vous ?
Examiner aussi le fichier « pom.xml » de « salaries » ainsi que les dépendances
Java :
A.U : 2023-2024Page 4
Créer les différents packages et classes demandés dans « salaries ». Ne pas mettre
des getters dans la classe Directeur avec des attributs finaux. Tester votre
programme sous Apache NetBeans IDE. La classe « Salaries » est la principale.
Créer une instance Vendeur et afficher son pourcentage.
Enlever le mot clé « public » devant le getter du pourcentage de la classe
Vendeur. Quel message d’erreur à détecter sur l’affichage du pourcentage
(dernière manipulation).
directeur
Interface et Record :
Modifier la classe « Salarie » sous forme d’interface. Quel type d’interface ?
Pourquoi il vaut mieux mettre Vendeur comme Record. Effectuer la modification.
Effectuer les modifications sur les autres classes.
Que remarquez-vous concernant l’affichage des éléments du tableau des
salariés ?
Exception :
Implémenter la classe ErreurRang : représente l’erreur qui survient lorsqu’on
tente de supprimer un salarié en donnant un rang erroné.
Mettre en œuvre le mécanisme de gestion de cette erreur dans le programme
principal et tester pour un remove exceptionnel.
Expliquer le code en repérant les définitions des classes anonymes. Exécuter sous
Apache NetBeans IDE.
Tester si insérez une chaine de caractères ou un nombre réel.
Effectuer une modification en vue de générer InputMismatchException.
A.U : 2023-2024Page 5
Remplacer l’interface Modifiable par des interfaces fonctionnelles, puis donner
un code équivalent dans lequel vous utilisez des expressions Lambda.
L’incrémentation est conditionnelle : si le nombre est pair on ajoute l’incrément,
sinon on ajoute le double de l’incrément.
Tester aussi l’expression Lambda de l’incrémentation est insérée via une
méthode statique de la classe principale.
Donnez un code équivalent et dans lequel, vous remplacez les classes anonymes
par des classes nommées explicitement. Testez l’incrémentation avec une
référence à la méthode
A.U : 2023-2024Page 6
Un joueur est caractérisé par son nom-prénom, son âge, sa taille, son poids, le nombre
de matchs joués (tous ces nombres doivent être positifs) et son rôle dans l’équipe
affecté à partir de cet ensemble statique {Gardien, Défense, Centre, Attaque}
Une équipe est composée par une liste de joueurs, et possède un ensemble de titres
Un tournoi est caractérisé par un lieu et un ensemble des équipes. A chaque équipe on
attribue un identifiant numérique unique lors du tournoi.
1) Implémenter les classes Joueur et Titre ainsi que les méthodes que vous jugez
nécessaires pour chaque classe. N’oublier pas d’implémenter les exceptions
adéquates.
2) Implémenter la classe Equipe. Il est à noter qu’on doit avoir ces méthodes :
ajouterJoueur(Joueur)
ajouterTitre(Titre)
getJoueur(int)
getJoueurs()
afficher() : affichage de toutes les données avec des itérateurs
afficherJoueurs()
afficherTitres()
redéfinition de toString() : utiliser StringBuffer et une boucle for Each
3) Implémenter une classe Test possédant une méthode main() afin de créer une
équipe, d’ajouter des joueurs et des titres et de tester les affichages.
A.U : 2023-2024Page 7