Vous êtes sur la page 1sur 2

UMBB / Faculté des sciences / Dept.

Informatique
2ème A. Ing
S3 TP PROGRAMMATION ORIENTEE OBJET AVEC LE LANGAGE JAVA

TP N°6

Exercice 1 :

1. Définissez une classe abstraite Animal avec une méthode abstraite son().
2. Implémentez trois classes, Chien, Chat et Oiseau, qui étendent la classe Animal et
fournissent une implémentation de la méthode son() pour représenter le son respectif
qu'ils font.
3. Créez une classe Ferme qui a une méthode faireCrier(Animal animal) qui appelle la
méthode son() de l'animal passé en paramètre.
4. Dans la méthode principale (main), créez une instance de la classe Ferme et utilisez-
la pour faire crier un chien, un chat et un oiseau.

Exercice 2 :

1. Définissez une classe abstraite Employee avec les propriétés communes telles que id,
nom, salaire.
2. Créez trois classes dérivées de Employee : Manager, Developpeur et Vendeur.
Chaque classe doit avoir des propriétés spécifiques :
 Manager : Ajoutez une propriété projetsGérés qui représente le nombre de
projets gérés par le manager.
 Developpeur : Ajoutez une propriété langage qui représente le langage de
programmation utilisé par le développeur.
 Vendeur : Ajoutez une propriété chiffreAffaires qui représente le chiffre
d'affaires généré par le vendeur.
3. Assurez-vous que toutes les classes dérivées implémentent une méthode
calculateSalary() qui calcule le salaire en fonction de leurs spécificités. Les règles de
calcul du salaire sont les suivantes :
 Manager : Le salaire est égal au salaire de base plus un bonus de 1000 par
projet géré.
 Developpeur : Le salaire est égal au salaire de base plus un bonus fixe de 500.
 Vendeur : Le salaire est égal au salaire de base plus 10% du chiffre d'affaires
généré.
4. Créez une classe Company qui contient une ArrayList d'objets Employee.

1
UMBB / Faculté des sciences / Dept. Informatique
2ème A. Ing
S3 TP PROGRAMMATION ORIENTEE OBJET AVEC LE LANGAGE JAVA

5. Ajoutez des méthodes à la classe Company pour :


 Ajouter un employé à la liste d'employés.
 Afficher les détails de tous les employés, y compris les propriétés spécifiques à
chaque type d'employé.
 Calculer et afficher la masse salariale totale de l'entreprise.
6. Testez votre système en créant au moins un employé de chaque type, en les ajoutant à
la société, et en affichant les détails et la masse salariale totale.

Exercice 3 :

1- Définissez une interface Vehicule avec les méthodes demarrer(), accelerer(),


faireReparation(), et un attribut getType().

2- Implémentez deux classes concrètes, Voiture et Moto, qui implémentent l'interface


Vehicule. Ajoutez un attribut spécifique à la classe Moto, tel que typeMoto.

3- Créez une classe ParcAutomobile qui contient une liste de véhicules


(List<Vehicule>) et a une méthode gererParc() qui utilise un itérateur pour
parcourir la liste et appeler les méthodes demarrer(), accelerer(), et
faireReparation() de chaque véhicule.

4- Dans la classe de test Main, instanciez des voitures et des motos, ajoutez-les à une
instance de la classe ParcAutomobile, puis appelez la méthode gererParc() pour
observer le late binding et le polymorphisme. Utilisez également un itérateur pour
afficher le type de chaque véhicule à l'aide de la méthode getType().

Vous aimerez peut-être aussi