A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Liveei 中级黑马   /  2015-8-24 19:26  /  368 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Liveei 于 2015-8-24 19:31 编辑


一、成员变量和局部变量的区别?
1.源代码中定义的位置不同
    成员变量定义在类中。
    局部变量定义在方法中(类的下一级大括号都是局部的),也可以定义局部变量。
2.内存中存储的位置不同
    成员变量存储在堆内存的对象中。
    局部变量存储在栈内存的方法中。
3.生命周期的不同
    成员变量随着对象的调用而出现。
    局部变量所属区间的运行而出现,随着所属区间的结束而结束。

二、
class car{
      int num;
      String color

      void run(){
          System.out.println(num+":"+color);
      }
}

public static void main (String[] args){
         //结果是什么???
         new.car().num=4;
         new.car().color="red";
         new.car().run();

}
结果:0:null;

原因:匿名对象对方法只进行一次调用。
       第一次new,对内存中开辟了一片空间,生成一个栈地址。没有被人指向。随既成为废代码、
       第二次new,如上。
       第三次的引用,运行了run()方法。打印了 0:null

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马