局部变量和成员变量的区别

1从定义上来讲:

 局部变量定义在函数中。

 成员变量定义在类中

2内存存储上来讲:

 局部变量随着函数的运行会在栈内存中出现,局部变量存储在栈内存

 成员变量会随着对象的出现在堆中存在,成员变量存储在堆内存中

3初始值上来讲:

 局部变量在定义时需要指定初(局部变量没默认值),只有初始化之后才能使用。

 成员变量可以不用初始化,有默认值

4从存活时间来讲(生命周期)

 局部变量是随着函数的进栈在函数所属的栈内存中存在,随着函数的出栈就消失。

 成员变量是随着对象的出现在堆中出现。随着对象的消失而消失。

posted @ 2018-02-02 17:52  JiangNian  阅读(205)  评论(0编辑  收藏  举报