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

Concepts Java pour Étudiants LMD

Ce document présente les concepts de base de la programmation orientée objet en Java, notamment les objets, classes, encapsulation, héritage et polymorphisme.

Transféré par

sabrina
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)
352 vues19 pages

Concepts Java pour Étudiants LMD

Ce document présente les concepts de base de la programmation orientée objet en Java, notamment les objets, classes, encapsulation, héritage et polymorphisme.

Transféré par

sabrina
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 Orientée Objet

(JAVA)

2 Année LMD Informatique Hammache A.


(2019-2020) arezki20002002@[Link]

[Link] 1
Plan du Cours
Introduction
Concepts de l’Orienté Objet
Syntaxe de Java
Objets et classes
Héritage et polymorphisme
Classes abstraites et interfaces
Les exceptions
Les collections d’objets
Les interfaces graphiques
[Link] 2
Introduction

[Link] 3
Quelques notions
 Algorithme: méthode pour résoudre un problème. Pour un problème
donné, il peut y avoir plusieurs algorithmes ou aucun !

 Programme: est le codage en langage de programmation de


l’algorithme, ce programme est lisible par l’ordinateur.

 Le langage de programmation: est l'intermédiaire entre l'humain et la


machine, il permet d'écrire dans un langage proche de la machine
mais intelligible par l'humain les opérations que l'ordinateur doit
effectuer. Quelques uns des plus connus: C, C++, Pascal, Java, python.

 Langage machine: est une succession de 0 et de 1.

 Compilateur (interpréteur): est un programme qui permet de


transformer un programme (fichier source) écrit dans un langage de
programmation en un programme en langage machine (fichier
exécutable).
[Link] 4
D’un problème à une solution informatique
Homme Machine

Fichier source

Programme
Problème Algorithme
… (Langage)
Résolution d’équation 2nd Calculer delta …
delta=a*a-4*b*c
degrés? Si delta >0 alors
if (delta>0)
…. {

Compilateur
/
Interpréteur

Données Exécutable
5 4 1 (a,b,c)
Code machine

00011001
Résultats 10011001
??? …

[Link] 5
Niveaux des langages de programmation

Langage Humain Haut niveau :


proche de
(Kabyle, Français, Arabe) l’homme,
vocabulaire et
syntaxe plus riches

JAVA, C++, (Objets)

C , Pascal (fonctions, procédures) Bas niveau : proche


de la machine,
instructions
Assembleur (mnémonique : add) élémentaires

Langage Machine (01111001..)

[Link] 6
Les familles de langages de programmation

On distingue habituellement deux grandes familles


de langages de programmation:
1. Les langages orientés procédures: (ex :pascal, le
C). Algorithmes (fonctions, procédures) +
Données = Programme.
2. Les langages orientés objet: (ex : C++, JAVA)
Méthodes + Données = Objet (Classe).

[Link] 7
Langages procéduraux

Un programme est composé de Données


plusieurs procédures (ou fonctions):
 Qui effectuent un traitement sur Traitement 1
des données (procédures). Traitement 2
 Qui retournent une valeur après Traitement 3
leur invocation (fonctions).
nom, prénom, nomModule, numGroupe,
Certains langages ne distinguent pas numSalle, ….
entre les procédures et les fonctions.
Inscription
Exemples de langages procéduraux ou Affectation
fonctionnels : Fortran, Lisp, C, … Deliberation
[Link] 8
Langages Orientés Objet
D
Un programme est composé d’un ou T
plusieurs objets qui contiennent:
D D
 Des données "internes". T
T
 Des traitements manipulant ces
D
données internes ou d'autres D
T T
données.

Les données d'un objet sont appelés Nom, prénom

ses attributs et ses traitements sont ajouter

ses méthodes (ou opérations). Num_groupe


Num_salle

ajouter ajouter

Exemples de langages orientés objet:


SmallTalk, C++, Java, Python, PHP. Num_Res, Heure
Num_Module

affecter ajouter

[Link] 9
Chapitre I :
Concepts de l’Orienté Objet

[Link] 10
Plan du Chapitre

Objet

Classe

Encapsulation

Héritage

Polymorphisme

[Link] 11
Objet
 Approche procédurale :
"Que doit faire mon programme ?"
 Approche orientée objet :
"De quoi doit être composé mon programme ?"
 Cette composition est la conséquence d'un choix de modélisation fait
pendant la conception
 Un objet est une abstraction d’une entité du monde réel

Exemple: Gestion d'une bibliothèque

Germinal
E. Zola
Liberté [Link]
[Link]
Directrice
Lectrice

Le seigneur des anneaux [Link]


[Link] Lecteur
[Link]
Bibliothécaire
[Link] 12
Classe
 Des objets similaires peuvent être informatiquement décrits par une même
abstraction : une classe
 Même structure de données et mêmes méthodes de traitement
 Valeurs différentes pour chaque objet

Classe Lecteur
Classe Livre Classe Employé -nom, prénom
-titre, auteur Classe Journal -nom, prénom, statut
-titre

Germinal
E. Zola Liberté [Link]
[Link]
Directrice
Lectrice

Le seigneur des anneaux [Link] [Link]


[Link] Bibliothécaire Lecteur

[Link] 13
Encapsulation
 L'encapsulation est la pratique consistant à regrouper des attributs au sein
d'une même classe.

 Pour améliorer la lisibilité des


programmes.
 Protéger les données: l’accès est
réalisé par des méthodes publiques
(interface de l’objet).

[Link] 14
Héritage (La généralisation / spécialisation)

 L’héritage autorise une classe d’objet de bénéficier de la structure


des données et du comportement d’une classe « mère » tout en lui
permettant de les affiner et ce, afin de prendre en compte les
spécificités de la classe « fille » sans avoir cependant à redéfinir ce
que les deux classes ont en commun.

 Généralisation = recherche des similitudes


 Identifier les objets du monde réel connus par le système
 Regrouper les objets en classes
 Généraliser les classes en super classes

 La généralisation est caractérisée par l’expression : « est un type de »

[Link] 15
Un exemple d’héritage
Exemple : gestion d’une bibliothèque
Classes
mères Classe Personne
Classe Ouvrage
-nom, prénom
-titre

Classe Employé Classe Lecteur


Classe Livre Classe Journal -grade -type
-auteur -périodicité

Germinal
Liberté [Link]
E. Zola [Link]
Directrice
Lectrice

[Link]
Le seigneur des anneaux
[Link] Lecteur
[Link]
Bibliothécaire

[Link] 16
Un autre exemple d’héritage
Classes mères
Moyen de transport

<<hérite>>

Classes
filles
Tracteur Train Voiture

Monde réel
(objets)

[Link] 17
Polymorphisme
Offre la possibilité d’associer à un comportement (méthode),
une implémentation différente en fonction de l’objet auquel
on se réfère.

Forme

Personne dessiner()
dessiner()

Sanctionner() Sanctionner() dessiner()

Employé Lecteur

[Link] 18
Avantages de la Programmation Orientée
Objet

 Facilite l’évolution du code.


 Facilite la réutilisation de code.
 Une meilleure sécurité (encapsulation).
 Améliore la conception et la maintenance des grands
systèmes.
 Permet la Programmation par « composants ».
 Conception d’un logiciel à la manière de la fabrication d’une
voiture.

[Link] 19

Vous aimerez peut-être aussi