public class P1ProvaVariabili { /** Variabile "globale" n */ public static int n = 5; public static void metodo() { // Dichiariamo una variabile `n` locale, che quindi oscura quella globale. È possibile // comunque accedere a quella globale indicandola con `P1ProvaVariabili.n`. int n = 3; System.out.println("PUNTO 3 variabile n: " + n); System.out.println("PUNTO 3 variabile P1ProvaVariabili.n: " + P1ProvaVariabili.n); P1ProvaVariabili.n = n + 1; // Adesso la variabile globale "n" vale 4, ma la variabile locale "n" continua a valere 3. System.out.println("PUNTO 4 variabile n: " + n); System.out.println("PUNTO 4 variabile P1ProvaVariabili.n: " + P1ProvaVariabili.n); } public static void main(String[] args) { // visto che `n` non è dichiarata nel metodo main, la variabile `n` equivale a // scrivere `P1ProvaVariabili.n`. System.out.println("PUNTO 1 variabile n: " + n); System.out.println("PUNTO 1 variabile P1ProvaVariabili.n : " + P1ProvaVariabili.n); n = 0; // quindi ora `n` vale 0 System.out.println("PUNTO 2 variabile n: " + n); System.out.println("PUNTO 2 variabile P1ProvaVariabili.n : " + P1ProvaVariabili.n); // chiamata di metodo metodo(); // la variabile `n` è stata cambiata System.out.println("PUNTO 5 variabile n: " + n); System.out.println("PUNTO 5 variabile P1ProvaVariabili.n : " + P1ProvaVariabili.n); } }