黑马程序员技术交流社区
标题:
成员变量和局部变量
[打印本页]
作者:
mm2015
时间:
2015-12-6 13:17
标题:
成员变量和局部变量
请问成员变量和局部变量怎么区分,怎么理解呢?/
作者:
Mr.zhao
时间:
2015-12-6 14:49
局部变量和成员变量主要是他们作用域的区别,
成员变量个是类内部;局部变量是定义其的方法体内部。
成员变量可以不显式初始化,它们可以由系统设定默认值;局部变量没有默认值,所以必须设定初始赋值。
成员变量在所在类被实例化后,存在堆内存中;局部变量在所在方法调用时,存在栈内存空间中
class Demo {
int a;//成员变量
public static void main(String[] args) {
int b;//局部变量
}
}
复制代码
作者:
ninety_奶挺
时间:
2015-12-6 14:53
成员变量和局部变量的区别:
1:成员变量直接定义在类中。
局部变量定义在方法中,参数上,语句中。
2:成员变量在这个类中有效。
局部变量只在自己所属的大括号内有效,大括号结束,局部变量失去作用域。
3:成员变量存在于堆内存中,随着对象的产生而存在,消失而消失。
局部变量存在于栈内存中,随着所属区域的运行而存在,结束而释放。
作者:
小小笑笑
时间:
2015-12-6 17:35
就个人经验来说,实际开发中常用的变量有三种:
全局变量:作用于整个App,常为static变量,常常用来存储多个界面要用到的值。
成员变量:作用于当前Activity,也仅用于当前Activity,当前Activity中的方法都可以使用。
局部变量:方法中的变量,你随手写了一个方法,随手在方法中创建并初始化了一个变量,这就是局部变量,离开这个方法,就没用了。
作者:
我住隔壁我姓王
时间:
2015-12-6 18:39
昨天刚刚学了这个
1:在类中的位置不同
成员变量:在类中方法外
局部变量:在方法定义中或者方法声明上
2:在内存中的位置不同
成员变量:在堆内存(成员变量属于对象,对象进堆内存)
* 局部变量:在栈内存(局部变量属于方法,方法进栈内存)
* C:生命周期不同
* 成员变量:随着对象的创建而存在,随着对象的消失而消失
* 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
* D:初始化值不同
* 成员变量:有默认初始化值
局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。
注意事项:
局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。
基本数据类型变量包括哪些:byte,short,int,long,float,double,boolean,char
引用数据类型变量包括哪些:数组,类,接口,枚举
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2