public class Scope { PRivate static int x=1; public static void main(String[] args) { int x=5; System.out.println("mian方法中的局部变量X="+x); useLocalVarible(); sueField(); System.out.println("最终X在main方法内的值="+x); } private static void useLocalVarible() { int x =25; System.out.println("进入局部方法useLocalVarible中X="+x); ++x; System.out.println("退出方法之前变量X="+x); } private static void sueField() { System.out.println("局部方法没有声明X,此时X="+x); x*=10; System.out.println("在局部方法中运算之后X="+x); } }很多初学者对变量的作用域搞不懂,我通常举例说你在你村里,大家叫你狗蛋,在村里这么叫你,大家都知道是你,但是出了村子,说狗蛋就没人知道了。又或者在别的村子也有一个人叫做狗蛋,别人在谈论的狗蛋就不再是你,又或者在县里有一个大名鼎鼎的人小名叫狗蛋,这时候别人谈论狗蛋就不在是你或者隔壁村的狗蛋了。但是很多人还是不能理解变量的作用域,这是摘自《javaSE8 for programming》一书中的例子,希望对作用域的理解有所帮助。
新闻热点
疑难解答