成员变量和局部变量的区别,静态变量和成员变量的区别

本文详细解析了成员变量与局部变量的区别,包括定义位置、内存位置、生命周期及初始化等,并对比了静态变量与成员变量的不同之处。

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

区别一:定义的位置不同

成员变量定义在类中;局部变量定义在方法中以及语句里

区别二:在内存中的位置不同

成员变量存储在堆内存的对象中;局部变量存储在栈内存的方法中

区别三:生命周期不同

成员变量随着对象的出现而出现,随着对象的消失而消失

局部变量随着方法的运行而出现,随着方法的弹栈而消失

区别四:初始化不同

成员变量因为在堆内存中,有默认初始化值

局部变量没有默认初始化值,必须初始化后才可以使用

静态变量和成员变量的区别:

什么时候定义静态变量呢?

当该成员变量的值,每一个对象都一致时(例如圆 中的3,14),就该对成员变量进行静态修饰

区别一:所属范围不同

静态变量所属于类,成员变量所属对象

静态变量也称为:类变量;成员变量也称为实例变量

区别二:调用不同:

静态变量可以被对象和类调用(一般用类名调用)

成员变量只能被对象调用

区别三:加载的时期不同

静态变量随着类的加载而加载

成员变量随着对象的加载而加载

区别四:内存存储区域不同

静态变量存储在方法区中

成员变量存储在堆内存中

注意:

static是成员修饰符,修饰的是方法和变量(成员变量)不能修饰局部变量

静态变量有默认初始化值,

private修饰成员(成员变量和成员方法(包括构造函数))



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值