Computing">
[Go to site: main page, start]

0% ont trouvé ce document utile (0 vote)
8 vues19 pages

Programmation Java M4 POO

Ce document traite de la programmation orientée objet en Java, en se concentrant sur des concepts clés tels que l'héritage, le polymorphisme et l'utilisation des packages. Il explique comment l'héritage permet la réutilisation du code et la flexibilité, tout en fournissant des exemples pratiques. Les sections incluent des définitions, des principes, des exercices et des références pour approfondir la compréhension de ces concepts.

Transféré par

munguakonkwalwaboshi
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)
8 vues19 pages

Programmation Java M4 POO

Ce document traite de la programmation orientée objet en Java, en se concentrant sur des concepts clés tels que l'héritage, le polymorphisme et l'utilisation des packages. Il explique comment l'héritage permet la réutilisation du code et la flexibilité, tout en fournissant des exemples pratiques. Les sections incluent des définitions, des principes, des exercices et des références pour approfondir la compréhension de ces concepts.

Transféré par

munguakonkwalwaboshi
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

PROGRAMMATION JAVA

L2, GEI, 2024-2025

MSc. Yvette KALIMUMBALO


CHAP III. PROGRAMMATION
ORIENTÉE OBJET (POO) EN JAVA
PLAN
Patie 1: Les classes et méthodes
Partie 2: L’héritage
Partie 3: Les classes abstraites et les interfaces
Partie 4: Les exceptions
2. L’héritage
OBJECTIFS

• Découvrir l’héritage en Java pour promouvoir la réutilisation du code.


• Comprendre le polymorphisme, un concept clé pour la flexibilité du code.
• Apprendre l’utilisation des packages pour organiser et modulariser des projets.
2.1 Introduction
• L’héritage est un mécanisme qui permet à une classe (sous-classe) de dériver les
propriétés et méthodes d’une autre classe (superclasse).
• Mots-clés importants :
• extends: Utilisé pour hériter d’une classe.
• super: Permet d’accéder aux membres de la superclasse.
• Avantages :
• Réutilisation du code.
• Extension des fonctionnalités existantes.
2.1 Introduction
• Quelques exemples
2.2 Principe de l’heritage

Autre example: Taxi et Voiture


• Un taxi inclue tout ce qu’inclue une voiture mais avec quelques particularités
(numéro de taxi, itinéraire habituel, etc)
• Toute fois, un taxi est une voiture
• Dans ce cas, on dira que la classe Taxi hérite les caractéristiques de la classe
Voiture, ou encore la classe Taxi est une dérivée de la classe Voiture, ou encore,
la classe Voiture est une classe Mère de la classe Taxi, ou encore la classe Taxi est
une classe fille de la classe Voiture
2.2 Principe de l’heritage
• Autre example

C'est le mot clé extends qui informe Java que la classe Taxi est une classe fille de la classe Voiture.

Le mot super appel du constructeur de la classe Voiture. On voit clairement que tout taxi aura toutes
les caractéristiques d’une voiture
2.2 Principe de l’heritage
Remarques
• Toutes les instances de la classe Taxi héritent alors toutes les variables et les
méthodes d’instance de la classe Voiture (marque, nombrePneus, nombrePortes,
les accesseurs, les mutateurs, etc).
• La classe fille ne peut pas utiliser un constructeur par défaut alors que sa mère en
a un qui n’est pas par défaut.
• Si la mère n’a pas de constructeur par défaut, Il est mieux de spécifier un
constructeur pour la classe fille et dans ce constructeur, faire appel au
constructeur de la classe mère (car la fille hérite les caractéristiques de la mère).
• A ce niveau ci, on ne peut définir les accesseurs et mutateurs que pour les
caractéristiques spécifiques car la classe fille hérite les accesseurs et mutateurs
de la classe mère pour leurs caractéristiques communes
2.2 Principe de l’heritage
Exercice
Modifiez l’entrainement précédent en faisant que 2 premieres des 5 voitures du
tableau soient des taxis.
2.3 Le polymorphisme
• Le polymorphisme est un mécanisme qui permet de modifier le comportement d’une
classe fille par rapport à sa classe mère
• Dans notre exemple, nous supposons que la description d’un taxi est un peu particulière
de la description de reste des voitures
• On peut donc avoir une méthode « description » dans la classe mère voiture qui permet
de décrire de manière générale les voitures
• Cette même méthode peut être répétée dans la classe fille Taxi et permet de décrire
uniquement les taxi.
• Dans ce cas, la méthode description est appelée méthode polymorphe
• Pour faire appel à la méthode de la classe mère dans la classe fille, on utilise le mot clé
super.
2.3 Le polymorphisme

En java, on ajoute l’annotation @Override au dessus de la méthode polymorphe dans la classe


fille pour préciser au compilateur que cette méthode est une redéfinition d’une méthode héritée.
2.3 Le polymorphisme
Surcharge et polymorphisme
La surcharge se produit lorsqu'une classe possède plusieurs méthodes avec le
même nom, mais avec des paramètres différents (nombre, type ou ordre des
paramètres). Elle permet d'avoir plusieurs méthodes avec le même nom mais qui
exécutent des actions différentes en fonction des arguments passés.
En d’autres termes, une méthode surchargée diffère de la méthode originale par le
nombre ou le type des paramètres qu'elle prend en entrée.

Une méthode polymorphe a un squelette identique à la méthode de base, mais


traite les choses différemment. Elle permet à une méthode ou un objet de se
comporter de manière différente selon le contexte.
2.4 Les package
• Package : Un regroupement logique de classes et d’interfaces similaires.
• Utilisé pour :
• Organiser le code.
• Prévenir les conflits de noms.
• Contrôler l'accès (avec les modificateurs de visibilité).
• Syntaxe :
• Déclarer un package : package monPackage;
• Importer un package : import [Link];

• Précédemment nous avons vu l’importation du [Link]


• Ceci veut dire juste que la classe Scanner est dans le dossier util qui est lui-même dans le
dossier java. D’où, c’est un chemin d’accès à la classe.
2.4 Les package
• Importer un package nous permet d'utiliser les classes qu'il contient.
• En créant un dossier sur la racine et y déplaçant nos classes Voiture et Taxi, nous
avons déjà notre package.
• On peut créer plusieurs packages autant qu’on veut.
2.4 Les package
La portée des classes et les packages
• Une classe déclarée public est visible même en dehors de son package
• Une classe sans le mot clé public au début, est une classe déclarée default. C’est-
à-dire qu’elle est public uniquement dans son package et pas en dehors.
TP_Exercice
Cfr fichier [Link]
References

• Ir. Johson K. Cours de programmation Java, inédit

Vous aimerez peut-être aussi