0% ont trouvé ce document utile (0 vote)
53 vues2 pages

TD TP 3 POO Java - Encapsulation Et Abstraction

Le document présente deux exercices sur la programmation orientée objet en Java, axés sur l'encapsulation et l'abstraction. Le premier exercice consiste à créer une classe CompteBancaire avec des méthodes pour gérer un compte, tandis que le second exercice implique la création d'une hiérarchie de classes pour différents types de voitures en utilisant une interface et une classe abstraite. Chaque exercice inclut des instructions détaillées pour la mise en œuvre des classes et des méthodes requises.

Transféré par

kenzayouni66
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
53 vues2 pages

TD TP 3 POO Java - Encapsulation Et Abstraction

Le document présente deux exercices sur la programmation orientée objet en Java, axés sur l'encapsulation et l'abstraction. Le premier exercice consiste à créer une classe CompteBancaire avec des méthodes pour gérer un compte, tandis que le second exercice implique la création d'une hiérarchie de classes pour différents types de voitures en utilisant une interface et une classe abstraite. Chaque exercice inclut des instructions détaillées pour la mise en œuvre des classes et des méthodes requises.

Transféré par

kenzayouni66
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Moulay Ismaïl 2024-2025

ENSAM – Meknès 3A / P. Industriel

TD TP 3 POO Java : Encapsulation et Abstraction

Exercice 1 (Encapsulation)

Objectif : L’objectif est d’implémentation le principe d’encapsulation en modélisant le compte


bancaire. Pour cela vous êtes censés créer une classe CompteBancaire pour représenter un compte
bancaire avec des attributs privés et des méthodes publiques pour manipuler le solde.

Pour atteindre cet objectif, suivre les étapes suivantes :

1. Création de la classe CompteBancaire :

• Créez une classe nommée CompteBancaire.


• Ajoutez les attributs suivants à la classe (tous privés) :
o numeroCompte (String)
o solde (double)
• Ajoutez un constructeur public à la classe qui prend deux paramètres :
o numeroCompte (String)
o soldeInitial (double)
• Dans le constructeur, initialisez les attributs de la classe avec les valeurs des paramètres.
• Ajoutez les méthodes publiques suivantes à la classe :
o deposer(double montant) : Ajoute le montant au solde si le montant est
positif, sinon affiche un message d'erreur.
o retirer(double montant) : Retire le montant du solde si le montant est
positif et inférieur ou égal au solde, sinon affiche un message d'erreur.
o consulterSolde() : Affiche le solde actuel du compte.
o getNumeroCompte() : Retourne le numéro de compte.

2. Création de la classe Main :

• Créez une classe nommée Main avec une méthode main().


• Dans la méthode main(), créez un objet de la classe CompteBancaire en utilisant le
constructeur :
o Le compte doit avoir le numéro "123456" et un solde initial de 1000.
• Affichez le numéro de compte en utilisant la méthode getNumeroCompte().
• Effectuez un dépôt de 500 et affichez le solde en utilisant la méthode consulterSolde().
• Effectuez un retrait de 200 et affichez le solde en utilisant la méthode consulterSolde().
• Tentez d'effectuer un retrait de 1500 et affichez le solde en utilisant la méthode
consulterSolde()
Université Moulay Ismaïl 2024-2025
ENSAM – Meknès 3A / P. Industriel

Exercice 2 (Abstraction)

Objectif : L’objectif de cet exercice est d’implémenter le principe Abstraction. Pour cela on va créer
une hiérarchie de classes pour représenter différents types de voitures, en utilisant l'abstraction pour
définir un comportement commun. Essayer de suivre les étapes ci-dessous.

1. Création de l'interface Vehicule :

• Créez une interface nommée Vehicule.


• Ajoutez les méthodes suivantes à l'interface :
o demarrer() : Démarre le véhicule.
o accelerer() : Accélère le véhicule.
o freiner() : Freine le véhicule.
o afficherDetails() : Affiche les détails du véhicule.

2. Création de la classe abstraite Voiture :

• Créez une classe abstraite nommée Voiture qui implémente l'interface Vehicule.
• Ajoutez les attributs suivants à la classe (tous protégés) :
o marque (String)
o modele (String)
o annee (int)
• Ajoutez un constructeur protégé à la classe qui prend trois paramètres (marque, modele,
annee) et initialise les attributs correspondants.
• Implémentez les méthodes demarrer(), accelerer() et freiner() avec des
comportements génériques.
• Déclarez la méthode afficherDetails() comme abstraite.

3. Création des classes concrètes VoitureDeSport et VoitureFamiliale :

• Créez deux classes concrètes nommées VoitureDeSport et VoitureFamiliale qui


héritent de la classe Voiture.
• Ajoutez des attributs spécifiques à chaque classe (par exemple, puissance pour
VoitureDeSport et nombrePlaces pour VoitureFamiliale).
• Ajoutez des constructeurs publics à chaque classe qui appellent le constructeur de la
superclasse et initialisent les attributs spécifiques.
• Implémentez la méthode afficherDetails() dans chaque classe pour afficher les détails
spécifiques de la voiture.

4. Création de la classe Main :

• Créez une classe nommée Main avec une méthode main().


• Dans la méthode main(), créez des objets des classes VoitureDeSport et
VoitureFamiliale.
• Appelez les méthodes demarrer(), accelerer(), freiner() et
afficherDetails() sur les objets pour tester le comportement des voitures.

Vous aimerez peut-être aussi