变量的作用域
什么是变量的作用域?
变量的作用域就是变量的使用范围,变量只能在它的作用域中使用。超过这个范围,系统就找不到这个变量了。
那么,
什么决定变量作用域的大小呢?
在说明决定变量作用域大小的因素之前,我们先要清楚一件事:
什么是代码的结构定义语句?
代码的结构定义语句只有两个
"{" 、 "}"
两个大括号之间明确了一个范围,但这还不足以决定变量的作用域。
看段代码:
int a;
{
a = 1;
int b = 2;
System.out.println("a = " + a);
System.out.println("b = " + b);
}
System.out.println("a = " + a);
System.out.println("b = " + b);//报错,无法解析b
上述代码中,
变量a在"{}"外中定义,"{}"内中赋值。
变量b在"{}"内中定义并赋值。
而"{}"内中变量a、b均可输出,"{}"外b却无法解析。因为
因为变量b的作用域在"{}"内。变量a的作用域在"{}"外,且包含"{}"内。
虽然变量a和变量b均在"{}"内中赋值,但变量a的作用域更大。
说明变量的作用域受结构定义语句和变量定义位置两方面共同决定。
浙公网安备 33010602011771号