3
Université de Sherbrooke Chapitre 1 : Langage JAVA
Partie 2 : Références
Département de génie électrique et de génie informatique
GEI 442 : Structures de données et algorithmes Ahmed KHOUMSI 5
Hiver 2001
Opérateur .
- Permet de choisir une méthode à appliquer à un objet, en spécifiant :
Référence de l ’objet . Nom de la méthode
Exemple : Soit un type Rectangle contenant une méthode surface (sans arguments)
Soit rect une variable qui référence un objet de type Rectangle
On peut calculer la surface de cet objet, comme suit :
double surf;
…
surf = rect.surface();
Si la référence de l ’objet est égale à null, alors l ’utilisation de l ’opérateur “ . ”
génère un NullPointerException lors de l ’exécution du programme
- Permet d ’accéder directement à un champ interne d ’un objet (si accès autorisé)
Exemple : Le type Rectangle contient deux champs largeur et longueur
Soit rect1 et rect2 deux variables qui référencent deux objets de type Rectangle
On peut copier les champs de rect1 dans les champs de rect2, comme suit :
rect2.largeur = rect1.largeur;
rect2.longueur = rect1.longueur;
Université de Sherbrooke Chapitre 1 : Langage JAVA
Partie 2 : Références
Département de génie électrique et de génie informatique
GEI 442 : Structures de données et algorithmes Ahmed KHOUMSI 6
Hiver 2001
Déclaration d ’objets
Lorsque variable de type de base déclarée : mémoire allouée pour variable
Lorsque objet déclaré : - mémoire allouée pour référence à l ’objet
- nom fourni pour se référer à l ’objet
Attention : pas de mémoire allouée pour stocker l ’objet
Mémoire allouée pour stocker l ’objet : à l ’aide de l ’opérateur new
Exemple : Soit un type Point qui contient :
- des champs absc et ord
- une méthode positionne
Point p; /* Alloue mémoire pour stocker référence p initialisée à null */
p = new Point(); /* Alloue mémoire pour stocker objet de type Point
Crée objet de type Point dans la mémoire allouée
p devient référence de l ’objet créé */
p.positionne(x,y); /* Champs absc et ord de l ’objet créé reçoivent x et y */
Remarque : les deux premières instructions peuvent être remplacées par
Point p = new Point();
Si on omet l ’instruction new, alors il y a erreur