静态变量和成员变量的区别
A:所属不同
静态变量属于类,所以也称为为类变量
成员变量属于对象,所以也称为实例变量(对象变量)
B:内存中位置不同
静态变量存储于方法区的静态区
成员变量存储于堆内存
C:内存出现时间不同
静态变量随着类的加载而加载,随着类的消失而消失
成员变量随着对象的创建而存在,随着对象的消失而消失
D:调用不同
静态变量可以通过类名调用,也可以通过对象调用
成员变量只能通过对 象名调用
成员变量和局部变量的区别
类中位置不同
成员变量:在类中方法外
局部变量:方法内
内存中位置不同
成员变量:在堆内存中
局部变量:栈内存中
生命周期不同
成员变量:随着对象的创建(new的时候创建)而存在 随着对象的消失(当这个内存区域没有引用去指向的时候 垃圾回收器就去回收)而消失
局部变量:随着方法的调用而存在 随着方法的调用完毕而消失
初始化不同
成员变量:有默认初始化
局部变量:没有默认初始化 所以在使用局部变量之前必须要先赋值
|
|