Dans le cadre de l’informatisation d’une entreprise, un directeur souhaite automatiser la
gestion des salaires de ses employés pour cela on aura :
-Une classe Employe : Un employé est caractérisé par :
+ces attributs : nom(chaine de caractères), son prénom(chaine de caractères) et son âge(entier),son
année de recrutement(entier)
+Ces méthodes : -Un constructeur a quatre paramètres permettant d’initialiser une instance de la classe
Employe.
+Affiche() :qui permet d’afficher les quatre attributs de la classe Employe.
+CalculSalaire() :permet de renvoyer le salaire mensuel d’un employé mais ce calcul dépend du type
de l'employé. On distingue les types d'employés suivants qui seront définie dans les classes suivantes:
-Producteur : Leur salaire vaut le nombre d'unités produites mensuellement multipliées par 5 :
Ajouter l’attribut NbUnités de type entier ;Définir la méthode CalculSalaire() ;Redéfinir la méthode
Affiche( )
-Commercial : Leur salaire mensuel se calcule en fonction du chiffre d’affaire qu’ils réalisent :
Ajouter l’attribut ChiffreAffaire de type double ; Redéfinir la méthode Affiche()
3
- La classe Commercial dérive la classe Vendeur et la classe Représentant tel que leur salaire est le
20 % du chiffre d'affaire qu'ils réalisent mensuellement, plus respectivement 400DH et 800DH :
Définir la méthode CalculSalaire() .
-Ajoutez une classe Personnel contenant un tableau d'employés. Il s'agira d'une collection
polymorphique d'Employe contenant ces méthodes :
+void ajouterEmploye(Employe) : qui ajoute un employé au tableau
+void show( ) : qui affiche tous les employes du Personnel.
+double salaireMoyen( ) :qui affiche le salaire moyen des employés de l’entreprise.
+void NbEmployes() :qui affiche le nombre de employés instanciées pour chaque d’employées
Exemple d’exécution de cette méthode :Dans votre entreprise vous avez 3 représentant,2vendeur et 2
producteur. Pour cela il faut ajouter les attributs nécessaires dans les classes précédentes.
TELECHARGER ICI
package Exo3;
public abstract class Employe {
String nom ,prenom;
int anneREc;
int age;
public Employe(String nom, String prenom, int anneREc, int age) {
super();
this.nom = nom;
this.prenom = prenom;
this.anneREc = anneREc;
this.age = age;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getPrenom() {
return prenom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public int getAnneREc() {
return anneREc;
}
public void setAnneREc(int anneREc) {
this.anneREc = anneREc;
}
public void afficher() {
System.out.println("Employer.nom:"+this.nom+"Employer.prenom:"+this.prenom+"Employer.age:"+this.age);
}
public abstract int CalculSalaire();
}
TELECHARGER ICI
package Exo3;
public abstract class Employe {
String nom ,prenom;
int anneREc;
int age;
public Employe(String nom, String prenom, int anneREc, int age) {
super();
this.nom = nom;
this.prenom = prenom;
this.anneREc = anneREc;
this.age = age;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getPrenom() {
return prenom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public int getAnneREc() {
return anneREc;
}
public void setAnneREc(int anneREc) {
this.anneREc = anneREc;
}
public void afficher() {
System.out.println("Employer.nom:"+this.nom+"Employer.prenom:"+this.prenom+"Employer.age:"+this.age);
}
public abstract int CalculSalaire();
}
// package Exo3;
public abstract class Commercial extends Employe {
double ChiffreAffaire;
public void afficher() {
System.out.println("Employer.nom:"+this.nom+"Employer.prenom:"+this.prenom+"Employer.age:"+this.age+"Employe.chifreDaffaire"+this.ChiffreAffaire);
}
public Commercial(String nom, String prenom, int anneREc, int age, double chiffreAffaire) {
super(nom, prenom, anneREc, age);
ChiffreAffaire = chiffreAffaire;
}
}
package Exo3;
public class Vendeur extends Commercial {
public Vendeur(String nom, String prenom, int anneREc, int age,double ChiffreAffaire) {
super(nom, prenom, anneREc, age, ChiffreAffaire);
}
public int CalculSalaire() {
return (int) (this.ChiffreAffaire*0.2);
}
}
package Exo3;
public class Producteur extends Employe {
int NbUnités ;
public Producteur(String nom, String prenom, int anneREc, int age, int nbUnités) {
super(nom, prenom, anneREc, age);
NbUnités = nbUnités;
}
public void afficher() {
System.out.println("Employer.nom:"+this.nom+"Employer.prenom:"+this.prenom+"Employer.age:"+this.age+"Employe.salaire"+CalculSalaire());
}
public int CalculSalaire() {
return this.NbUnités*5;
}
}
package Exo3;
public class Représentant extends Commercial {
public Représentant(String nom, String prenom, int anneREc, int age,double ChiffreAffaire) {
super(nom, prenom, anneREc, age, ChiffreAffaire);
}
public int CalculSalaire() {
return (int) (this.ChiffreAffaire*0.2);
}
}
Pour teseter
package Exo3;
public class Personnel {
public static void main(String[] args) {
Employe []tr=new Employe[6];
tr[1]=new Vendeur("toufik","mzili",2012,24,230);
tr[2]=new Représentant("yahya","dakhir",2002,4,29);
tr[3]=new Producteur("taha","mz",2015,32,290);;
tr[3].afficher();
System.out.println(tr[3].CalculSalaire());
tr[2].afficher();
System.out.println(tr[2].CalculSalaire());
tr[1].afficher();
System.out.println(tr[1].CalculSalaire());
}}
Commentaires
Enregistrer un commentaire