Cours 5 JAVA 2022 PDF
Cours 5 JAVA 2022 PDF
Cours 5 JAVA 2022 PDF
ORIENTÉS OBJETS
NADIA CHALABI
NAD.CHALABI@GMAIL.COM
Introduction
➢ Il n’y a aucun lien entre les données et le code qui les manipulent.
Attributs
Méthodes ou
comportement
Les objets qui ont des caractéristiques communes sont regroupés dans une
entité appelée classe.
Une classe est une description formelle d'une collection d'objets similaires, de
même identité.
Les généralités sont contenues dans les classe et les particularités dans les
objets.
Les objets informatique sont construits à partir de leur classe par un processus
qui s’appelle l’instanciation.
Même si aucun paramètre n’est attendu, les parenthèses sont tout de même
obligatoires.
Le mot clé throws indique la liste des exceptions que cette méthode peut
déclencher lors de son exécution.
Méthodes et modificateurs d’accès
❑abstract : indique que la méthode est abstraite et qu’elle ne contient pas de code.
La classe où elle est définie doit elle aussi être abstraite.
❑final : indique que la méthode ne peut pas être redéfinie dans une sous-classe.
❑native : indique que le code de la méthode se trouve dans un fichier externe écrit
dans un autre langage.
❑synchronized : indique que la méthode ne peut être exécutée que par un seul
thread à la fois.
Représentation UML d’une classe
• Les getters sont des méthodes qui commencent toujours par le mot get
et finissent par le nom de l’attribut en écrivant en majuscule la lettre
qui vient juste après le get. Les getters retourne toujours le même type
que l’attribut correspondant.
Les setters sont des méthodes qui commencent toujours par le mot set
et finissent par le nom de l’attribut en écrivant en majuscule la lettre
qui vient juste après le set. Les setters sont toujours de type void et
reçoivent un paramètre qui est de même type que la variable:
Membres statiques d’une classe.
Les objets d’une même classe peuvent partager des mêmes variables qui
sont stockées au niveau de la classe. Ce genre de variables, s’appellent les
variables statiques ou variables de classes.
Comme un attribut une méthode peut être déclarée statique, ce qui signifie
qu’elle appartient à la classe et partagée par toutes les instances de cette
classe.
Dans la notation UML, les membres statiques d’une classe sont soulignés
▪ Supposons que nous voulions ajouter à la
classe Compte une variable qui permet
de stocker le nombre le comptes créés.
▪ Comme la valeur de variable nbComptes
est la même pour tous les objets, celle-ci
sera déclarée statique. Si non, elle sera
dupliquée dans chaque nouveau objet
créé
▪La valeur de nbComptes est au départ
initialisée à 0, et pendant la création
d’une nouvelle instance (au niveau du
constructeur), nbCompte est incrémentée
et on profite de la valeur de nbComptes
pour initialiser le code du compte.
Destruction des objets : Garbage Collector
Tous les objets qui ne sont pas retenus par des handles seront détruits.
Pour signaler au garbage collector que vous voulez détruire un objet d’une
classe, vous pouvez faire appel à la méthode finalize() redéfinie dans la
classe.
L’encapsulation
❑ De point de vue utilisation, un objet est une boite noire qui offre un
certain nombre de méthodes permettant d’interagir avec lui.
❑ Peu importe comment il est construit en interne, la seule chose
nécessaire pour pouvoir utiliser un objet est de savoir ce qu’il peut faire
et surtout comment lui demander.
Exemple: un poste de TV est une « boite noire » ayant pour interface: un écran,
des HP et une télécommande. Pour changer de chaine, il suffit de
changerChaine(int chaine) Peu importe ce qui se passe réellement en
interne.
L’encapsulation
Accès aux membres d’une classe
POO PPS
Gérer le
Approche orientée objet : stock
Bibliothécaire
Cours C++ Cours Java
RITCHIE Directrice
DELANNOY
Lecteur
Avantages de la POO
Gérer le
Approche orientée objet : stock
Bibliothécaire
Cours C++ Cours Java
RITCHIE Directrice
DELANNOY
Exemple: un livre à la bibliothèque est caractérisé par:
❑ Un titre
❑ Un auteur
❑ Un numéro d’inventaire
❑ Un numéro de classement
❑ Une quantité (le nombre de livres disponibles à la biblihothèque).
Un objet de type Livre est constitué d’attributs qui caractérisent la
structure de cet objet: private String titre;
private String auteur
private int numInv;
private String numClas;
Static int Qte;
2- Créez deux comptes que vous affecterez à deux variables. Ecrivez le code
correspondant aux opérations suivantes :
Vous mettrez le code java correspondant à cette question dans la méthode main
d’une nouvelle classe appelée TesteCompte. Vous compilerez et testerez ce
programme.
public class TesteCompte {
public static void main(String[] args) {
Compte martin, jean;
martin.afficher();
System.out.println("Compte de jean, ");
jean.afficher();}}
Exercice 1:partie 2
}
for (int i=0; i<table.length; i++){
System.out.println("Compte numero "+ i + ", ");
table[i].afficher();
}
}
}
Exercice 1:partie 3
}
}
Récupérer ce que vous tapez
Définir une classe Livre avec les attributs suivants : id, titre, auteur
(Nom complet), prix.
}
Créer le code java des
classes suivantes
Exercice
Circle
-rayon : double
Créer le code java de la
+Circle() classe suivante
+Circle(rayon:double,
couleur: String)
+setRayon()
+getRayon():double
+getSurface():double
package test;
}
}
}
Etudiant
Departement
-num: double
-num : double
-nom : String
-nom : String
-Dept:String
+Departement()
+getNum:double
+Etudiant()
+getNom():String
+getNum:double
+getNom():String
+getDept():String
+toString():String