(java)面向对象 ---- 成员变量与局部变量的区别

本文详细解析了成员变量与局部变量在定义位置、作用域、默认值、内存位置及生命周期上的五大区别,并阐述了两者同名时如何正确访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.   成员变量与局部变量的区别:

(1) 定义位置的区别

          成员变量,定义在类中,方法外

         局部变量,定义在方法内,语句内

(2)作用域不同

         成员变量,作用范围是整个类

         局部变量,作用范围是方法内,语句内

(3)默认值不同

         成员变量,有自己的默认值

         局部变量,没有默认值,不赋值不能使用

(4)内存位置不同

         成员变量,随对象进入堆内存存储

        局部变量,随自己的方法进入栈内存

(5)生命周期不同

        成员变量,跟随对象,在堆中储存,内存等待JVM清除,周期相对较长

        局部变量,跟随方法,方法出栈,生命相对较短

 

2.   成员变量与局部变量同名:

       在方法中访问成员变量使用this.   不然根据就近原则方法会使用它的局部变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值