Vous êtes sur la page 1sur 2

Programmation Orienté Objet – Java

TP 4

Héritage, polymorphisme, classe abstraite


Partie 1 :

1. Créer une classe « Employe» correspondante au schéma suivant :

Employe
- String nom
- String prenom
- int matricule
+ Employe()
+ Employe(String nom, String prenom)
+ Employe(String nom, String prenom, int matricule)
+ afficheToi()
+ String getNom()
+ String getPrenom()
+ Double getMatricule()

La méthode afficheToi() affiche à l’écran le nom et le prénom de l’employé.


2. Créer une classe « Equipe » qui utilise la classe Employe. La fonction main
de Equipe comprendra la création d’un tableau de 3 employés et l’affichage de
leurs noms.
3. Peut-on modifier la variable d’instance «nom» depuis l’extérieur de la classe ?
et depuis l’intérieur ?
4. Créer une classe Technicien qui hérite de la classe Employe. Celle-ci
comprendra une variable d’instance supplémentaire : nbHeure : entier
a. Ecrire des constructeurs :
• Un constructeur sans arguments,
• Un construceur à 4 arguments (String nom, String prenom, int
mat, int nbHeure). Vous utilisez les constructeurs de la classe
mère.
b. Redéfinissez la méthode afficheToi(), en faisant appel à la méthode
de la classe mère. (afficheToi() doit afficher à l’écran : nom, prénom,
nbHeure).

1
FZ. SALMAM CCN-S1 2023/2024
5. En changeant les modificateurs d’accès des données membres de la classe
mère, de private vers protected peut-on accéder à ces variables de l’extérieur
de la classe Employe ?
6. Ecrire une classe, qui teste la classe Technicien.
7. Refaire le même travail et développer une classe Commercial qui hérite de la
classe Employe. Celle-ci comprendra une variable d’instance : « CA » (chiffre
d’affaires) au lieu de « nbHeure ».

Partie 2 :

Maintenant nous allons programmer le calcul des salaires hebdomadaires des


employés :

• Les techniciens sont payés suivant le nombre d'heures (nbHeure) qu'ils ont
travaillé dans la semaine :
SalaireHebd = nbHeure * 40DH
• Les commerciaux sont payés avec une somme fixe à laquelle on ajoute 5%
du chiffre d'affaires qu'ils ont fait dans la semaine :
SalaireHebd = 1000DH+ 0,05CA
1. Développer une méthode calculSalaire() qui calcul le salaire de l’employé
selon son type : technicien ou commercial. (Dans la classe mère Employe
déclarer cette méthode abstraire et donner sa signature).
2. Une classe « Paie » comportera une unique méthode main() qui demandera
les informations sur des employés des différents types (2 techniciens et 3
commerciaux). Les employés seront enregistrés dans un tableau
employes[].
3. La méthode main() affichera le salaire hebdomadaire de chacun des
employés dans une boucle "for" qui parcourra le tableau des employés. Vous
utiliserez le polymorphisme avec la méthode calculSalaire(). L'affichage
aura exactement la forme :
" le salaire hebdomadaire de Ahmed salamat est : 1200 DH"
….

2
FZ. SALMAM CCN-S1 2023/2024

Vous aimerez peut-être aussi