黑马程序员技术交流社区

标题: ----------成员变量和局部变量的区别---------- [打印本页]

作者: syusouki    时间: 2015-10-3 14:12
标题: ----------成员变量和局部变量的区别----------
  1).成员变量:                               
    A.定义在"类体"中;可以是任何数据类型;                               
    B.会被自动初始化;                               
        class Student{                       
                String name;               
                void show(){               
                        System.out.println("我叫:" + num);        //打印:我叫:null
                }               
        }                       
    C.当实例化对象后,被存储在"堆"中;                               
    D.当"对象"不被使用(没有任何引用),并被垃圾回收器回收时被清理;                               
                               
2).局部变量:                               
   A.定义在某个方法、或其它代码块中;                               
   B.必须显示初始化,否则不能访问其值;                               
        class Student{                       
                void show(){               
                        String name;       
                        System.out.println("我叫:" + name);        //编译错误。局部变量必须显示初始化才能访问其值;
                        name = "张三";        //OK。可以被赋值。
                }               
        }                       
   C.当方法或其它代码块被执行时,基本数据类型的"值"和引用数据类型的"引用"都是存储在"栈"中;                               
   D.当方法或代码块执行完毕时,会被立即清理;                               





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