变量的作用域

什么是变量的作用域?

变量的作用域就是变量的使用范围,变量只能在它的作用域中使用。超过这个范围,系统就找不到这个变量了。

那么,

什么决定变量作用域的大小呢?

在说明决定变量作用域大小的因素之前,我们先要清楚一件事:

什么是代码的结构定义语句?

代码的结构定义语句只有两个

"{" 、 "}"

两个大括号之间明确了一个范围,但这还不足以决定变量的作用域。
看段代码:

        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的作用域更大。
说明变量的作用域受结构定义语句和变量定义位置两方面共同决定。

posted on 2021-09-16 15:23  技术小伙伴  阅读(488)  评论(0)    收藏  举报