// module: PorteeVariables.java // auteur: felipe // objet: illustration de la portee d'une variable // comment: bien comprendre la difference entre une variable membre et une variable locale public class PorteeVariables { // nos premieres variables "membre" // oublions toujours le static static int n = 30; static int m; // par defaut initialisee a 0 // une methode de la classe static int maFonction (int a , int b) { // a b et c sont des variables locales, seul ce bloc peut les modifier // ces variables seront detruites a la fin du bloc int n = 15; // !!!! masque la variable de classe a = 15; // n'affecte pas le parametre d'appel (z) b = 13; // n'affecte pas le parametre d'appel (y) return n+a+b; } // la methode principale public static void main(String[] args) { int z=1, y=2; int a=7; // z ey y sont appeles les parametres actuels (ou parametres d'appel) int b = maFonction(z,y); System.out.println("z="+z+" y="+y + " a="+a); // notez que n est tjs inchange et que l'on peut acceder a n et m, les variables membre // depuis n'importe quelle methode de la classe System.out.println("n= " + n + " m = " + m); } }