面向对象-成员变量和局部变量的区别
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.作用范围
成员变量:
定义在类中,在整个类中都可以被访问。
局部变量:
只定义在局部范围内,如:函数内,语句内等,只在它所属的局部大括号中有效。
二.存储情况
成员变量:
成员变量随着对象的建立而建立,存在于对象所在的堆内存中,当对象变成垃圾被回收时,该对象中的成员变量才会消失,所以,成员变量也是实例对象变量。
局部变量:
局部变量存在于栈内存中,当方法或者语句被指向的时候才存在,当方法或者语句指向结束时,该局部变量会被自动释放。
三.初始化情况
成员变量:
在堆内存中有默认初始化。
局部变量:
没有默认初始化值,需要手工初始化后才可以使用。