Algorithmique et langage Java

Portée des variables

Un programme est constitué de blocs d'instructions. Il existe des règles concernant la visibilité des variables (leur "portée") depuis les différents blocs.

Une variable déclarée dans un bloc d'instruction est accessible depuis ce bloc d'instructions et les blocs d'instructions qu'il contient seulement. Depuis l'extérieur, elle est "invisible".

Le contenu d'une variable devenue inaccessible est éliminé de la mémoire par la machine virtuelle à l'aide du "garbage collector".

Exemple :

package initial;
class Portee {
static String langage="Java";
public static void main(String[] args){
	ConsoleTexte mc=new ConsoleTexte();
	mc.ecritln(langage);
	String matiere="ISN";
	for (int i=1;i<6;i=i+1){
		mc.ecritln(matiere+" "+langage+" numero "+i);
    }
  }
}
Dans cet exemple :

Tout bloc contenu dans le programme Portee a accès à la variable langage (mas pas à matiere ni à i). langage est ici une variable globale du programme. Elle doit être déclarée static .

la variable matiere est accessible depuis le main et tout bloc qu'il contient. C'est une variable locale au main.

La variable i est accessible depuis la boucle for où elle est déclarée. C'est une variable "à usage unique" qui disparaît dès que le programme est sorti de la boucle. Cela permet de réutiliser le nom i pour faire autre chose ensuite, par exemple pour une autre boucle.

Licence Creative Commons
licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé
Auteur : Nathalie Bonnin
Professeur de Physique, Chimie, Informatique au lycée La Martinière Monplaisir (Lyon 8ème)
Contact :
nathalie.bonnin (chez) scientillula.net
Licence Creative Commons
La totalité du contenu du site Scientillula.net appartient à Nathalie Bonnin et est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé