4
Types en Java
Les classes peuvent servir de type (pour déclarer
les variables ou dans les signatures des
méthodes), comme les types primitifs
Les types que l’on a déjà vu :
Types primitifs (int, double,…)
Classes (String par exemple)
Tableaux (int[] ou String[] par exemple)
D’autres sortes de types seront étudiées dans le
cours de L3
Richard Grin Chaînes de caractères page 19
Création d’un objet String
En Java, la syntaxe normale pour la création d’un
objet utilise le mot clé new, comme pour un
tableau : Train train = new Train(125);
La classe String a une syntaxe spéciale
String chaine = "Bonjour";
crée un objet String et l’affecte à la variable
chaine
Comme pour les tableaux, l’objet String est
entreposé dans le tas (pas dans la pile)
Richard Grin Chaînes de caractères page 20
Richard Grin Chaînes de caractères 21
String dans le tas
Pile Tas
chaine = "Bonjour";
chaine Bonjour
Vocabulaire
Un objet de la classe String (ou de toute autre
classe) s’appelle une instance de la classe
Richard Grin Chaînes de caractères page 22
Un objet String n’est pas modifiable
La classe String est une classe particulière car
il est impossible de modifier l’état des instances
de la classe
Il existe dans le JDK la classe StringBuilder
pour représenter les chaînes de caractères
modifiables ; elle sera étudiée à la fin de cette
section
Richard Grin Chaînes de caractères page 23 Richard Grin Chaînes de caractères 24
Nouvelle affectation avec les String
String chaine = "Bonjour";
chaine = "Hello";
La dernière instruction correspond aux étapes suivantes :
1) Une nouvelle valeur (Hello) est créée
2) La variable chaine référence la nouvelle chaîne
Hello (et plus l’ancienne chaîne Bonjour)
3) La place occupée par la chaîne Bonjour pourra être
récupérée à un moment ultérieur par le ramasse-miette
Cet objet String
n’est pas modifié