Java基础之成员变量与局部变量

Java基础之成员变量与局部变量
 
变量根据定义 位置的不同 ,我们给变量起了不同的名字。如下图所示:
局部变量:定义在函数(方法)中的那些变量。 局部变量只在定义它的方法 ( 函数 ) 中有效。
成员变量:定义在类的成员位置上的变量。成员变量在整个类中都有效。(全局变量是成员变量的俗称)。
成员变量又分为 实例(对象)变量 和 类变量(static静态变量)。(先了解,后面会详细讲解)
class Car{
String color;//color为实例变量
static Stringname; //只要有关键字static修饰,name为类变量
}
不管是成员变量还是局部变量它们都符合java基础学习的变量的定义规则。
1) 数据类型 变量名 ;
2) 数据类型 变量名=值;
思考下面代码的结果是什么?
注意:在类中和该类的一个函数中,同时存在一个相同类型相同名称的变量,在函数被执行时,函数中优先使用定义在函数中的变量(局部变量)。
优先级:先使用内部的,再使用外部的(先去内部找,有就使用。没有则再去外部找)就近原则。
局部变量和成员变量的区别:
1、从定义上来讲:
局部变量定义在函数中。
成员变量定义在类中。
2、从内存存储上来讲:
局部变量随着函数的运行会在栈内存中出现,局部变量存储在栈内存中。
成员变量会随着对象的出现在堆中存在,成员变量存储在堆内存中。
3、从初始值上来讲:
局部变量在定义时需要指定初始值(局部变量没有默认值),只有初始化之后才能使用。
成员变量可以不用初始化,有默认值。
4、从存活时间上来讲(生命周期)
局部变量是随着函数的进栈在函数所属的栈内存中存在,随着函数的出栈就消失。
成员变量是随着对象的出现在堆中出现。随着对象的消失而消失。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值