黑马程序员技术交流社区

标题: 自我总结——局部变量和成员变量的相关知识待更新 [打印本页]

作者: 公输子    时间: 2015-9-1 22:23
标题: 自我总结——局部变量和成员变量的相关知识待更新

首先我们了解一下堆内存和栈内存的区别

堆内存
new建立的实例都存放在堆内存中
1:每一个new出来的都有地址值
          本身是一个十进制、显示的时候是一个16进制的值。
2:每一个实例中的内容都有默认值。
          整数:0 浮点型:0.0 字符型:‘u\0000’ 布尔型:false
3:会在不确定的时间内被垃圾回收器回收

栈内存
               局部变量和成员变量的区别
1:定义在方法中或者方法声明上的形式参数都叫做局部变量。
2:当数据使用完毕(或者超出作用域)它就自动从内存中消失
1、定义的位置区别成员变量:在类中,方法外
局部变量:方法中,或者方法的形式参数

2、初始化的区别
成员变量 :有默认初始化值
局部变量: 没有默认初始化值,想先定义,赋值才能使用。

3、存储位置区别
成员变量:堆内存,随着对象的存在而存在,随着对象的消失消失
局部变量:栈内存,随着方法的存在(调用完毕)而存在(消失)
变量使用过程中遵循就近原则
局部变量 成员变量 (在去父类)
如果直接想越过局部变量用this关键字







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