黑马程序员技术交流社区

标题: 变量中大部分人都会犯的错误 [打印本页]

作者: 18001105207    时间: 2016-9-21 22:06
标题: 变量中大部分人都会犯的错误
下面程序中输出的 变量 a 的值为多少?        class Demo{         public static void main(String[] args) {
          static int a= 0;
          for(int i = 0;i<10;i++) {
                     method(a);
           }
          System.out.println(a);
          }
          public static void method(int a) {
               a++;
             }
        }







作者: zhangyawang523    时间: 2016-9-21 22:17
static int a =0; 应该放在main()方法上面  结果还是0,不变 基本数据类型值不变
作者: 18001105207    时间: 2016-9-21 22:41
是的,static int a =0;在main()方法外面,是成员变量
作者: 459374998    时间: 2016-9-21 22:46
0吧,一个int a在方法区。方法里面a是在栈内存总
作者: kk_kerwin    时间: 2016-9-21 22:49
静态成员是随着类的加载而加载,a属于基本类型变量,调用的方法没有返回值,因此结果还是0
作者: mqxin    时间: 2016-9-21 22:51
最后还是0,这个是对就近原则的考察,刚好做题再巩固一下
作者: kk_kerwin    时间: 2016-9-21 22:51
静态成员是随着类的加载而加载,a属于基本类型变量,调用的方法没有返回值,因此结果还是0




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2