成员变量(实例变量)局部变量静态变量(类变量)的区别
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成员变量(实例变量)局部变量静态变量(类变量)的区别成员变量(实例变量)&局部变量区别:
(1)作⽤域
成员变量:针对整个类有效。
局部变量:只在某个范围内有效。
(⼀般指的就是⽅法,语句体内)
(2)存储位置
成员变量:随着对象的创建⽽存在,随着对象的消失⽽消失,存储在堆内存中。
局部变量:在⽅法被调⽤,或者语句被执⾏的时候存在,存储在栈内存中。
当⽅法调⽤完,或者语句结束后,就⾃动释放。
(3)初始值
成员变量:有默认初始值。
局部变量:没有默认初始值,使⽤前必须赋值。
成员变量(实例变量)&静态变量(类变量)区别:
A:调⽤⽅式
静态变量也称为类变量,可以直接通过类名调⽤。
也可以通过对象名调⽤。
这个变量属于类。
成员变量也称为实例变量,只能通过对象名调⽤。
这个变量属于对象。
B:存储位置
静态变量存储在⽅法区长中的静态区。
成员变量存储在堆内存。
C:⽣命周期
静态变量随着类的加载⽽存在,随着类的消失⽽消失。
⽣命周期长。
成员变量随着对象的创建⽽存在,随着对象的消失⽽消失。
D:与对象的相关性
静态变量是所有对象共享的数据。
成员变量是每个对象所特有的数据。