Vous êtes sur la page 1sur 3

Définition d’une classe

 Les classes forment les briques d’une application Java.


Programmation Orienté Objet JAVA
 La classe décrit une famille d’objets ayant la même structure et le même
Chapitre 3 : Classes et méthodes comportement. Elle est caractérisée par :
 Un nom.
 Une composante statique : des données membres (ou attributs ou
ISCAE – 2ème LF IAG
variables) qui caractérisent l’état des objets pendant l’exécution du
programme.
 Une composante dynamique : des méthodes qui décrivent le
Préparé par : Manel BLAGHJI comportement des objets de la classe.
E-mail : blaghji.manel@gmail.com
 Les objets sont des représentations dynamiques (instanciation) du modèle
défini pour eux au travers de la classe.
LOGO  Une classe permet d’instancier (créer) plusieurs objets.
AU : 2010/2011
 Chaque objet est instance d’une (seule) classe.
2

Déclaration d’une classe Déclaration d’une classe


 En JAVA, la syntaxe de déclaration d'une classe est la suivante :  private et public : modificateurs d'accès précisant la possiblité d'utilisation
[private/public] [abstract/final] class NomClasse de la classe (par défaut, le modificateur est private):
[extends NomSuperClasse] • private : indique que l'utilisation de la classe est réservée aux classes du
[implements NomInterface1, Interface2,…] même package (package est un regroupement logique de classes)
{ • public : donne la possibilité d'utiliser la classe à toutes les autres classes
// déclaration des attributs
// déclaration des méthodes  abstract et final : modificateurs en relation avec le concept d'héritage.
• abstract : c’est une classe qui ne peut pas être instanciée : il faut définir
}
une classe qui hérite de cette classe.
• final : la classe ne peut pas être modifiée, sa redéfinition grâce à l'héritage
 Remarques : est interdite.
 Les modificateurs abstract et final ainsi que public et private sont
mutuellement exclusifs.
 extends : annonce l'héritage de la classe NomSuperClasse.
 L'ordre des méthodes dans une classe n'a pas d'importance. Si dans une
classe, on rencontre d'abord la méthode A puis la méthode B, B peut être
 implements : annonce l'implémentation d'une ou plusieurs interfaces par la
appelée sans problème dans A. classe (Une interface est constituée d'un ensemble de déclarations de
méthodes sans implémentation)
3 4

1
Déclaration des attributs Exemple de déclaration d’une classe

 En JAVA, la syntaxe de déclaration d'un attribut est la suivante :


class Personne { public class MonApplication{
[private/public/protected][static][final] // attributs (Données membres) public static void main(String args[]) {
type_attribut nom_attribut [= valeur]; public String nom; Personne p = new Personne();
public int age; p.nom = "Mariem";
 private, public et protected : des modificateurs d'accès à l'attribut à partir // Méthodes p.age = 40;
d'autres classes : public void afficheToi() { p.afficheToi();
• private : indique que l'accès est réservé aux méthodes de la même classe.
String affiche= "Je m’appelle " + nom; }
• public : donne la possibilité d'accès à toutes les méthodes des autres classes.
affiche += ". J’ai " + age + " ans."; }
• protected : limite l'accès aux méthodes de la même classe, des classes
System.out.println(affiche);
dérivées (classes filles) et des classes du même package.
 static : précise le fait qu'il y aura une seule copie de cet attribut qui est }
commune à tout objet crée à partir de la classe en question (il s'agit d'un }
attribut de classe),
 final : indique que l'attribut est une constante.
5 6

Données membres d’une classe Données membres d’une classe


 Les données membres d’une classe sont les attributs (ou les propriétés).  Les variables de classe :
 Elles ne sont définies qu'une seule fois quel que soit le nombre d'objets
 Les données d'une classe sont contenues dans des variables nommées instanciés de la classe et elles sont accessibles sans avoir besoin de
propriétés ou attributs. Ce sont des variables qui peuvent être des
passer par une instance de la classe. Leur déclaration est accompagnée du
variables d'instances, des variables de classes ou des constantes.
mot clé static.

 Les variables d’instance :


 L'appartenance des variables de classe à une classe entière et non à un
Une variable d’instance peut prendre plusieurs valeurs différentes (une
objet spécifique permet , lors de son appel, de remplacer le nom de l’objet
valeur par donnée par objet) . par le nom de la classe.

 Exemple :  Exemple :
Personne p1 = new Personne();
MaClasse m = new MaClasse();
p1.nom = "Mariem"; public class MaClasse() { int c1 = m.compteur;
Personne p2 = new Personne(); static int compteur = 0; int c2 = MaClasse.compteur;
p2.nom = "Rim"; } // c1 et c2 possèdent la même valeur.
7 8

2
Données membres d’une classe Données membres d’une classe
 Le concepteur de la classe se pose la question : Exemple :

• Qu’est ce qui est utile aux autres classes et fonctions de ma classe, i.e. le class Personne1 { public class MonApplication{
monde extérieur // Attributs (Données membres) public static void main(String args[]) {
• Ce qui est utile est public, le reste, utile au fonctionnement interne de private String nom; Personne1 p = new Personne1();
l’objet est private. ...
// Méthodes p.setNom("Marie");
• De cette manière, « l’extérieur » ne peut modifier le comportement
interne et voulu par le concepteur (principe d’encapsulation) public void setNom(String n) { p.setAge(40);
nom = n; p.afficheToi(); } }
 Si les données membres sont déclarées private et qu’une une autre classe }
nécessite l’accès aux données de la classe, on définit deux types de public String getNom() {
méthodes pour manipuler ces données : return nom;
}
• Les méthodes qui permettent l’accès aux données membres sont
...
appelées accesseurs, (appelées getter).
}
• Les méthodes qui permettent de modifier les données membres sont
appelées mutateurs, (appelées setter ).
9 10

Vous aimerez peut-être aussi