Java - 变量及其生命周期,初始值,访问方式

本文深入探讨了Java类的成员变量,包括静态变量与实例变量的区别与特性,阐述了它们的生命周期及如何在代码中正确使用。

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

一、java类的成员变量有两种: (静态变量,实例变量)

1.被static关键字修饰的变量,叫类变量或者静态变量。

      1.1: 类的静态变量在内存中只有一个,java虚拟机在加载类的过程中为静态变量分配内存,

      1.2: 静态变量位于方法区,被类的所有实例共享。 

      1.3: 静态变量可以直接通过类名进行访问,其生命周期取决于类的生命周期。

      1.4: 静态变量是类相关的变量,所以他的生命周期是从这个类被声明,到这个类彻底被垃圾

回收机制彻底回收才会被销毁。

 

2.另一种没有static修饰,为实例变量 

      2.1:实例变量取决于类的实例。每创建一个实例,java虚拟机就会为实例变量分配一次内存,

      2.2:实例变量位于堆区中,其生命周期取决于实例的生命周期。

      2.3:实例变量是这个类的对象里的变量,它和静态变量不同,它只能由创建出的对象来调用。

      2.4:所以实例变量是从这个对象(其实就是实例)被创建开始,直到这个对象没有任何引用变量

去引用它,最终被垃圾回收站回收,这时这个实例变量也跟着就消失了。

      2.5:只要对象被当作引用,实例变量就将存在。

 

 

    总而言之:静态变量生命周期就是类的开始和销毁

              实例变量生命周期就是对象的开始和销毁.

 

 

二、局部变量

    1.作用域: 在你定义的范围内有效。

    2.作为方法或语句块的成员而存在,存在于方法的参数列表和方法定义中。

    

初始化

1:局部变量在使用前必须被程序员主动的初始化,

2:成员变量则会被系统提供一个默认的初始值。

所以在语法上,类的成员变量能够定义后直接使用,而局部变量在定义后先要赋初值,然后才能使用。

 

引用:所有类的成员变量可以通过this来引用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值