- Concept objet

publicité
Support Java
Java
- Concept objet
Support Java : Objets
JM Angeli 2010
1/18
Support Java
Objet :
Objet : représentation d’un concept du monde réel :
Caractérisé par :
- Identité
→ Qui il est.
- État :
→ Ce qu’il sait.
- Comportement → Ce qu’il peut faire.
Support Java : Objets
JM Angeli 2010
2/18
1
Support Java
Caractéristiques d’un objet :
Identifiant unique attribué à un objet lui
permettant d’être distingué des autres objets.
Identité :
+
Attributs :
Données ou champs stockant des informations
sur un objet.
+
Méthodes :
Actions, calculs, traitements réalisables par
l’objet.
Support Java : Objets
3/18
JM Angeli 2010
Support Java
Classe : Description abstraite d’un objet
Ensemble des éléments composant l’objet :
Méthodes
(Opérations)
+
Attributs
(Valeurs)
Instanciation de la classe
Identité
Objet
Support Java : Objets
JM Angeli 2010
4/18
2
Support Java
Abstraction des données → Indépendance :
Modification de la structure interne de la classe sans
changement visible par l’utilisateur.
Détails de
l’implémentation
Attributs (Valeurs)
Méthodes (Opérations)
Interface
Publique
Attributs (Valeurs)
Détails de
l’implémentation
Méthodes (Opérations)
Interface
Publique
Méthodes (Opérations)
Support Java : Objets
JM Angeli 2010
5/18
Support Java
Encapsulation des données et des méthodes :
Modularité
Maintenance indépendante des autres objets.
Masquage
Les autres objets ne voient que ce qu’ils ont besoin.
Support Java : Objets
JM Angeli 2010
6/18
3
Support Java
Programme : Ensemble d’objets échangant des messages
Objet
Message
Me
ssa
ge
Mes
sag
e
Message
Objet
Objet
Objet
Objet
Objet
Machine n° 2
Machine n° 1
Support Java : Objets
JM Angeli 2010
7/18
Support Java
Message : support de l’interaction des objets
¾Destinataire du message.
¾Nom de la méthode à exécuter.
¾Paramètres demandés par la méthode.
Avantages :
Manipulation uniquement par appel aux méthodes.
Objets pas nécessairement sur même machine (ou processus).
Support Java : Objets
JM Angeli 2010
8/18
4
Support Java
Java langage objet :
Tout (presque !) est objet.
Un programme est un ensemble d’objets échangeant des messages.
Chaque objet à son propre espace mémoire composé d’autres objets.
Chaque objet est de type précis : il est instance d’une classe.
Tous les objets d’un type particulier peuvent recevoir le même message.
Support Java : Objets
9/18
JM Angeli 2010
Support Java
Classe :
Modèle (Usine – Moule – Prototype) à objet :
défini les variables, méthodes commune à ses objets.
1→ Déclaration
Mémoire
3→ Initialisation
class
Objet
2→ Instanciation : new
Support Java : Objets
JM Angeli 2010
10/18
5
Support Java
1 → Déclaration :
Bavard
UnObjet ;
Compilateur
L’identifiant UnObjet
fait référence à un objet
de la classe :
Bavard
Support Java : Objets
11/18
JM Angeli 2010
Support Java
2 → Instanciation :
new Bavard() ;
Compilateur
new création de l’objet :
Réservation de la place
mémoire
Support Java : Objets
JM Angeli 2010
12/18
6
Support Java
3 → Initialisation :
UnObjet.intValeur = 5 ;
Compilateur
La valeur 5 est affectée
au membre
intValeur de UnObjet
Support Java : Objets
13/18
JM Angeli 2010
Support Java
Obtenir un objet :
1→
Déclarer une variable référence :
Bavard UnObjet ;
2→
Créer un objet (instancier la classe) :
new Bavard() ;
1+2→ Déclarer et Associer l’objet à sa référence
Bavard UnObjet
Support Java : Objets
=
JM Angeli 2010
new Bavard() ;
14/18
7
Support Java
Création d’une classe :
1 seule classe publique
La classe déclarée publique doit avoir exactement le
même nom que le fichier.
Mot clé class pour déclarer la classe
// nom du fichier Bavard.java
public class Bavard {
// code de la classe
=
}
Support Java : Objets
15/18
JM Angeli 2010
Support Java
Méthodes et membres de classe :
Masquage non respecté !
UnObjet.intValeur = 5 ;
Détails de
l’implémentation
Support Java : Objets
Attributs (Valeurs)
Méthodes (Opérations)
JM Angeli 2010
Interface
Publique
16/18
8
Support Java
Méthodes et membres de classe :
Masquage respecté :
Méthodes internes pour affecter les valeurs :
UnObjet.setValeur(6) ;
Détails de
l’implémentation
Attributs (Valeurs)
Méthodes (Opérations)
Support Java : Objets
Interface
Publique
17/18
JM Angeli 2010
Support Java
Méthodes et membres de classe :
Masquage respecté :
Méthodes internes pour récupérer les valeurs :
Resultat = UnObjet.getValeur() ;
Détails de
l’implémentation
Support Java : Objets
Attributs (Valeurs)
Méthodes (Opérations)
JM Angeli 2010
Interface
Publique
18/18
9
Téléchargement