/** Program: EssentialScope Purpose: simple demonstration of Java scope and constants @author john@december.com @version 1.03; 22 July 1995 */ class EssentialScope { static int counter = 10; static final int MAXIMUM = 99; public static void main (String args[]) { // Illegal: MAXIMUM = 900; Can't assign values to final variables System.out.println("main: counter = " + counter); System.out.println("main: MAXIMUM = " + MAXIMUM); alpha(); beta(); gamma(counter); System.out.println("main: counter = " + counter); } public static void alpha() { System.out.println("alpha: counter = " + counter); System.out.println("alpha: MAXIMUM = " + MAXIMUM); } public static void beta() { int counter = 900; System.out.println("beta: counter = " + counter); System.out.println("beta: EssentialScope.counter = " + EssentialScope.counter); } public static void gamma(int counter) { int gammaCounter = 500; // undefined variable outside of gamma counter = counter + 100; System.out.println("gamma: counter = " + counter); System.out.println("gamma: gammaCounter = " + gammaCounter); } }