Classes et objets en JAVA
Pierre Habraken - Philippe Genoud

 

par Philippe.Genoud@imag.fr.

L'objet de ce document est de vous donner quelques élements de base vous permettant d'écrire vos premières applications java manipulant des objets. Sont abordés de manière extrêmement succinte les points suivants :
- création (instanciation) d'objets,
- références pour la désignation des objets,
- utilisation des objets (envois de messages).

Création des objets

Les objets d'un même type manipulés par une application logicielle sont des exemplaires "fabriqués" à partir d'un modèle unique, modèle représenté par une classe.
Tous les objets sont utilisés et manipulés au moyen des méthodes de la classe dont ils sont un exemplaire.

La création d'un objet est obtenue au moyen de l'opérateur new appliqué à la classe dont on veut fabriquer un exemplaire. Exemple :

La partie droite de l'expression d'affectation : new Client(nom, adresse) est une sous-expression dont l'évaluation provoque :
  1. la création d'un objet de la classe Client,
  2. L'initialisation de cet objet au moyen des valeurs désignées par nom et adresse passées en paramètres.
  3. Le renvoi du nom interne du nouvel objet créé, résultat de l'évaluation.

L'initialisation de l'objet est effectuée par le code d'une méthode spéciale appelée constructeur. Cette méthode est définie dans la classe concernée et porte toujours le nom de cette classe, ici Client.
Les paramètres formels déclarés pour cette méthode spéciale doivent permettre d'initialiser correctement les caractéristiques (attributs, propriétés) de chaque nouvel objet créé.

Plusieurs constructeurs peuvent exister pour une même classe : chacun d'eux permet dans ce cas d'initialiser d'une façon différente les valeurs des propriétés de l'objet créé. Chaque constructeur d'une classe donnée possède donc une liste d'arguments différente de celle des autres constructeurs de la même classe. En revanche, tous les constructeurs d'une classe donnée portent un même nom : celui de la classe.

Références

Lors de la création (construction), le constructeur renvoie une valeur : la référence du nouvel objet. C'est cette référence, nom interne (adresse) de l'objet qui permet ensuite d'accéder à l'objet au travers de messages. Ainsi après l'évaluation de l'affectation

la variable unClient contient la référence de l'objet créé. Dans la suite du programme, cette variable permmettra de désigner (référencer) cet objet. En Java, la seule opérations autorisée sur les références est l'affectation.

Utilisation des objets

Une fois créé, un objet peut être utilisé par un programme (ou par un autre objet). L'utilisation d'un objet peut répondre selon le cas à différents besoins : Important : quel que soit le cas, l'utilisation ou la manipulation d'un objet se fait au moyen des opérations ou méthodes qui ont été définies pour cet objet dans la classe (le modèle) dont il est issu.