Académique Documents
Professionnel Documents
Culture Documents
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
Exercice 3 :
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().