[单项选择题] 阅读下面程序 public class VariableUse {  public static void main(String[] arqs) {   int a;   i

12 查阅

[单项选择题] 阅读下面程序 public class VariableUse {  public static void main(String[] arqs) {   int a;   if(a==8) {    int b=9;    System.out.println("a="+a);    System.out.println("b="+b);   }   System.out.println("a="+a);   System.out.println("b="+b):  } } 该程序在编译时的结果是

A.变量a未赋值

B.第二个System.out.println("b="+b);语句中,变量b作用域有错

C.第二个System.out.println("a="+a);语句中,变量a作用域有错

D.第一个System.out.println("b="+b);语句中,变量b作用域有错

参考答案:

B

局部变量定义在复合语句内,其作用域为定义开始到符合语句结束。所以b的作用域为从变量b开始定义到第一个大括号括回的地方,因而第二个输出b的语句访问不到变量b。

计算机考试