0% ont trouvé ce document utile (0 vote)
36 vues3 pages

Gestion des Salaires en POO Java

Ce document décrit la création d'une hiérarchie de classes pour modéliser différents types d'employés dans une société. La classe Employé de base est abstraite et définit une méthode de calcul de salaire abstraite. Les sous-classes Représentant, Vendeur, etc. héritent d'Employé et redéfinissent la méthode de calcul appropriée. La classe Personnel gère une liste d'employés et des fonctionnalités liées aux salaires.

Transféré par

hamza jmili
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
36 vues3 pages

Gestion des Salaires en POO Java

Ce document décrit la création d'une hiérarchie de classes pour modéliser différents types d'employés dans une société. La classe Employé de base est abstraite et définit une méthode de calcul de salaire abstraite. Les sous-classes Représentant, Vendeur, etc. héritent d'Employé et redéfinissent la méthode de calcul appropriée. La classe Personnel gère une liste d'employés et des fonctionnalités liées aux salaires.

Transféré par

hamza jmili
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

POO en Java

2ème année de Génie Informatique

LP Développement des Systèmes


d’Information et de Communication

TP 5 : L’héritage

Exercice 1:

On souhaite gérer les salaires des employés d’une société de fabrication de produits
pharmaceutiques.

Partie 1 :
Pour gérer les employés de cette société, nous commençons par la création de la classe
[Link] qui contient :
- les attributs privés nom, prénom, âge et date d'entrée en service dans la société,
- un constructeur avec paramètres,
- une méthode getTitre() qui retourne la chaine : "L’employé"
- une méthode toString() qui retourne la chaine " L'employé "+ prénom + nom . Utiliser la
méthode getTitre().
- une méthode abstraite calculerSalaireEmployé qui retourne le salaire de l’employé (double).
La formule de calcul du salaire dépend du type de l’employé.
NB: La classe Employe doit être déclarée abstraite parce qu’elle contient une méthode
abstraite (calculerSalaireEmployé()).

Créer les classes Représentant, Vendeur, Technicien, Manutentionnaire qui dérivent de la


classe Employé.

La formule de calcul du salaire mensuel dépend du type de l’employé :

- Représentant : 30% du chiffre d'affaires qu'ils réalisent mensuellement, plus 1000 DH.
Utiliser les constantes de classe suivantes : POURCENT_REPRESENTANT=0.3 et
BONUS_REPRESENTANT=1000. Ajouter un attribut membre chiffreAffaire (double) pour le
chiffre d’affaire.

Salaire= chiffreAffaire * POURCENT_REPRESENTANT+ BONUS_REPRESENTANT

- Vendeur : 20% du chiffre d'affaires qu'ils réalisent mensuellement, plus 670 DH. Utiliser les
constantes de classe suivantes : POURCENT_VENDEUR = 0.2 et BONUS_VENDEUR = 670.

- Technicien : nombre d’unités produites mensuellement multiplié par 5. Utiliser la constante


de classe FACTEUR_UNITE = 5.0.

- Manutentionnaire : nombre d’heures de travail mensuel multiplié par 100 DH. Utiliser la
constante de classe SALAIRE_HORAIRE = 100.00.

Etablir le diagramme de classes correspondant.

1
POO en Java
2ème année de Génie Informatique

LP Développement des Systèmes


d’Information et de Communication

Ajouter à chaque classe dérivée les attributs appropriés, un constructeur avec paramètres
(utiliser super), le code de la méthode abstraite calculerSalaireEmployé() et la redéfinition de
la méthode getTitre(). Par exemple pour un représentant, getTitre() retourne : "Le
représentant"

Partie 2 :
Ajouter le type d’employé Commercial duquel dérivent les types d’employés représentants et
vendeurs précédents. Ceci permet d’éviter les redondances d’attributs (l’attribut chiffre
d’affaires est redondant).
La classe Commercial contient un attribut privé chiffreAffaire (double), un constructeur avec
paramètres et l’accesseur getChiffreAffaire() qui retourne le chiffreAffaire.
La classe mère des classes Représentant et Vendeur devient alors la classe Commercial.
Partie 3 :
Certains techniciens et manutentionnaires manipulent des produits dangereux. Ainsi, nous
allons ajouter à ces employés à risque une prime mensuelle fixe de 335 DH.
Ajouter une interface Risque pour les employés à risque permettant de leur associer une prime
mensuelle. Cette interface contient une constante de classe PRIME = 335.
Pour gérer ces deux nouveaux types d’employés, ajouter deux classes TechnicienARisque et
ManutentionnaireARisque.

Ajouter à chacune des 2 classes un constructeur avec paramètres et une redéfinition de la


méthode calculerSalaireEmployé(). Cette méthode utilise la constante de classe PRIME
définit dans l’interface Risque.

Partie 4 :
Ajouter une classe Personnel contenant les attributs suivants :
- liste: un tableau d'employés,
- nbEmployes : un entier contenant le nombre d’employés dans liste et
- MAX_EMPLOYES : une constante de classe qui contient le nombre maximal d’employés
qu’on peut ajouter dans liste.
De plus, la classe Personnel contient les méthodes aux prototypes suivants :
- Personnel(int n) : Le constructeur de la classe qui demande en entrée le nombre d’employés
n à ajouter dans liste. Si n est supérieur à MAX_EMPLOYES, un message d’erreur est affiché
sinon, on alloue la mémoire pour les n employés.

- void ajouterEmploye(Employe e) : Ajoute un seul employé e à la liste.

- void afficherSalaires() : Affiche les informations des employés de la liste c à d titre, nom,
prénom et [Link] les méthodes toString() et calculerSalaireEmployé().

- double salaireMoyen() : Calcule le salaire moyen des employés de la liste.

2
POO en Java
2ème année de Génie Informatique

LP Développement des Systèmes


d’Information et de Communication

- main : qui 1) lit le nombre d’employés n à ajouter, 2) crée un objet p de la classe Personnel
pour appeler les méthodes : ajouterEmploye(), afficherSalaires() et salaireMoyen() pour 3)
ajouter des employés des 6 types, 4) afficher leurs salaires correspondants ainsi que 5) le
salaire moyen.

NB: ajouter un menu.


Exercice supplémentaire:

Dans l’exercice 1, traiter les exceptions qui peuvent être générées suite à de mauvaises
manipulations de la part de l’utilisateur.

Vous aimerez peut-être aussi