Vous êtes sur la page 1sur 3

Formation JAVA 2020

Lab N°2
La POO

A- Explorer
A partir du document mis à votre disposition :
1- Implémenter en utilisant Votre IDE préféré la classe Voiture de la section « Une première
classe » (Voir le support de cours).
2- Quelle la différence entre les déclarations :
• public static int nombreDeRoues = 4;
• public String marque;
3- Quelle est la syntaxe en java pour créer :
a. Les constructeurs
b. La surcharge
4- Quelques bonnes pratiques à suivre lorsqu'on utilise le mécanisme d'héritage.
5- Le rôle de la classe Classes final, Une classe générique, une méthode générique.
Concepts Rôle Syntaxe en java

Les constructeurs

Les modificateurs de
visibilité

L'héritage

Unboxing et
l’autoboxing
Les classes abstraites
Une interface
Gestion des erreurs avec les exceptions

B- Pratiquer

Exercice 1

Soit la classe Etudiant suivante

- Dans cet exercice, définir la classe Etudiant contenant comme champs, le nom, quatre notes,
la moyenne de ces notes et un résultat qui vaut ″admis″ ou ″non admis″, et contenant les
méthodes suivantes : constructeur, calculMoyenne qui met à jour les champs moyenne et
résultat et la méthode afficher.
- Définir la classe principale qui permet de créer deux instances de la classe Etudiant, calcule
leurs moyennes et les affiche.

Mohamed El hajji 1/ 1
Formation JAVA 2020
Exercice 2

On considère un parc de moyens de transport constitué par:

• Des voitures Véhicule


• Des camions
• Des autocars

Voiture Camion Autocar

Le problème répondre aux critères suivants :


• Le parc ne doit pas dépasser un nombre limité de voitures (nbMaxVoitures), un nombre
limité de camion (nbMaxCamions), un nombre limité d'autocars (nbAutocars).
• Chaque type de véhicule possède un matricule incrémenté selon le type
• Pendant la création d'un véhicule, il faut préciser 'année du modèle.
• Chaque type de véhicule possède une capacité de réservoir (ex : toutes les voitures ont la
même capacité)
• Chaque véhicule possède une quantité de carburant
• Les véhicules sont destinés à la vente
• Les véhicules peuvent être en panne ou non

Vehicule Voiture Camion


-carburant: float -Capacite:int -Capacite:int
-matricule : String +nbMaxVoiture: int +nbMaxCamion: int
-modele int +nbVoitures: int +nbCamion: int
-panne: boolean -Voiture(int m) -Camion(int m)
- vendu:boolean +addCarburant(float c): +addCarburant(float c): void
+ Vehicule(int modele) void +CreerCamion(int m):Camion
+getcarburant(): float +CreerVoiture(int
m):Voiture
+getMatricule():String
+getModele():int
+getPanne():Boolean
+getVendu():Boolean
+setCarburant(float c):void Retourne une voiture si nbMaxVoiture n’est pas atteint et
+setMatricule(String null dans le cas contraire
m):void
+setPanne(boolean p):void
+setVendu(Boolean p):void
+toString():String
+afficher() :void

Questions

1- Donnez le diagramme des classes

Mohamed El hajji 1/ 2
Formation JAVA 2020
2- Créer le code java de la classe Véhicule
3- Créer le code java de la classe Camion
4- Créer le code java de la class Voiture
5- La classe Parc a la représentation UML suivante :

Parc
Adresse : String
Capacite :int
T[ ] : Vehicule
Nb :int
+Parc(String, int)
+ ajouter(int, Vehicule): void
+lister() : void
+ main(String[ ]) :void
Ecrire la classe Parc contenant :
a. comme attributs l’adresse du parc, sa capacité et un Tableau T[] de Véhicules.
b. Un constructeur avec 2 paramètres l’adresse du parc et sa capacité
c. La méthode void ajouter (Vehicule) qui permet d’ajouter un Véhicule au parc.
d. La méthode int rechercher(String) qui permet de chercher dans T un matricule
de Véhicule passé comme paramètre et retourne sa position s’il est trouvé et -
1 dans le cas contraire.
e. La méthode void lister() qui permet d’afficher la liste des Véhicules dans le
parc.
f. La méthode main() qui :
• Qui crée un parc de capacité=30 Véhicules.
• ajouter 2 voitures et 3 camions.
• Afficher le tableau.
• Saisir un matricule de voiture à chercher dans la liste, s’il est trouvé, on
affiche ses informations sinon afficher le message non trouvé.
Saisir un matricule de Camion à chercher dans la liste, s’il est trouvé, on affiche ses
informations sinon afficher le message non trouvé
C- Etendre (en groupe)
L'objectif de ce projet de cette mission est de vous permettre d'appliquer l'ensemble des notions de
programmation objet que vous avez normalement acquises dans ce module. Plusieurs séances de TP seront
mises à votre disposition à cet effet. L'évaluation de votre projet sera conduite lors de la dernière séance de
TP.

- Implémenter en java la mission Etat civil.

NB : publier et partage votre code en utilisant github.

Mohamed El hajji 1/ 3

Vous aimerez peut-être aussi