
Matière : Programmation Orientée Objet
TP4
Niveau : 2ère année TSI, ECOM , LFIG
AU : 2019-2020
Objectifs : Apprendre les notions suivantes: héritage, classe concrète et interface.
-----------------------------------------------------------------------------------------------------------------
Exercice1 :
Publicité
1.Créer une classe de base Article. Un article possède deux champs privés:
-Nom : string
-Prix : double
Et les opérations :
\*GetPrix() : pour retourner le prix de l'article
\* SetPrix(double) : pour changer le prix de l'article
\*Afficher() : permet d’afficher le prix.
2. Réaliser ensuite une classe ArticleEnSolde, dérivée de la classe Article. Cette sous-classe comprend une information additionnelle:
Publicité
\* Remise : pourcentage de réduction sur le prix d'origine
\* SetRemise(entier) pour changer la remise.
La classe va redéfinir la méthode GetPrix(), afin de tenir compte du solde. Elle va également redéfinir la méthode Afficher(), afin que l'affichage donne également le pourcentage de remise sur le prix d'origine.
Exercice 2 : (classe abstraite)
Créer une classe abstrait véhicule caractérisé une matricule, l’année de son modèle, le prix , la vitesse (initialisé à 0 ) .
Tous les attributs de la classe véhicule sont supposés privés.
La classe Véhicule possède également deux méthodes abstraites démarrer () et accélérer(double ) qui seront définies dans les classes dérivées et qui afficheront des messages personnalisés.
La méthode toString() de la classe Véhicule retourne une chaîne de caractères qui contient les valeurs du matricule, de l’année du modèle et du prix et la vitesse .
Publicité
Les classes Voiture et Avion étendent la classe Véhicule :
La classe Avion a comme attribut modèle : Airbus A320 , A330 ,A380 .
Les classes Voiture et Avion définit concrètement les méthodes :
- démarrer() affichant des messages personnalisés indiquant la nature du véhicule qui va démarrer .
- accélérer(double ) qui va augmenter la vitesse et affichant la nouvelle vitesse du véhicule .
Réaliser le classe Test qui contient la méthode main : vous créer un ensemble de véhicules (voiture et Avion ) dans un ArrayList , Affichez les informations des Voitures .
RQ :
-Pour Ajouter un élément à la fin d'un ArrayList avec la méthode :
Publicité
boolean add(Object newElement) ;
- pour tester le contenu, il existe la méthode boolean isEmpty() ;
-pour connaître le nombre d’éléments dans la liste, il faut utiliser la méthode : int size() ;
- pour accéder à un élément il n’y a pas d’indexation comme pour les tableaux il faut utiliser la méthode spécialisée Object get(int index) throws IndexOutOfBoundsException ;
Exercice 3:
Définir les classes point, figure, cercle et cylindre (chaque classe un constructeur et l’héritage est publique) :
