Java中成员变量、局部变量和静态变量的区别

本文详细介绍了Java中的成员变量、局部变量和静态变量,包括它们的生命周期、作用范围、默认初始化值及调用方式。成员变量与对象相关联,随对象的创建与销毁而存在。局部变量仅在定义它的代码块内有效,无默认初始化值。静态变量属于类,由类加载时创建,随类的生命周期存在,可通过类名直接访问。了解这些概念对于理解Java内存管理和程序设计至关重要。
摘要由CSDN通过智能技术生成

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

一、成员变量(/ 实例变量)

  1. 成员变量随对象的建立而建立,随对象的消失而消失,存在于对象所在的堆内存中;
  2. 成员变量定义在类中,在整个类中都可以被访问;
  3. 成员变量具有默认初始化值。

二、局部变量

  1. 局部变量定义在局部范围内,只在所属局部范围内有效。如函数内、语句内;
  2. 局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放;
  3. 局部变量没有默认的初始化值;

三、静态变量

  1. 静态变量定义在类中,方法外;
  2. 静态变量有默认的初始化值;
  3. 静态变量可被对象或类名调用;
  4. 静态变量存在于方法区;
  5. 静态变量随类共存亡;

四、成员变量和静态变量(/ 类变量)的区别

  1. 生命周期不同:
    成员变量:随对象的创建而创建,随对象的消失而消失;
    静态变量:随类加载而存在,随类的消失而消失。
  2. 调用方式不同
    成员变量:只能被对象调用;
    静态变量:可被对象或者类名调用。
  3. 数据存储位置不同
    成员变量:存储在堆内存的对象中,是对象的特有属性;
    静态变量:静态变量数据存储在方法区的静态区,是对象的共有属性。

五、三者区别
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值