类变量(静态变量static)

1. 类变量内存布局

(1)在JDK8以前static变量是在方法区里面创建,在JDK8以后,是在堆里面类对应的class对象的最后。

(2)static变量是同一个类所有对象共享的。

(3)static变量在类加载时就生成了。

2. 基本定义

类变量也叫静态变量/静态属性,是该类的所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值。同样任何一个该类的对象去修改它时,修改的也是同一个变量。

3. 基本语法

(1)定义语法

①访问修饰符 static 数据类型 变量名; (推荐)

②static 访问修饰符 数据类型 变量名;

例:

(2)访问类变量(依然遵守访问权限)

①类名.类变量名 (推荐)

②对象名.类变量名

例:

4. 注意事项和使用细节

(1)什么时候需要使用类变量

当我们需要让某个类的所有对象都共享一个变量时,就可以考虑使用类变量(静态变量)。比如:定义一个学生类,统计所有学生共交多少钱,定义一个钱的静态变量。

(2)类变量与实例变量(普通属性)的区别

类变量是该类的所有对象共享的,而实例变量是每个对象独享的。

(3)加上static称为 类变量或静态变量,否则称为 实例变量/普通属性/普通成员变量/非静态变量。

(4)类变量的调用同样需要遵循 访问修饰符的访问权限和范围。

(5)类变量是在类加载时就初始化了,也就是,即使没有创建对象,但只要类加载了,就可以使用类变量。

(6)类变量的生命周期是随类的加载开始,随类的消亡而摧毁。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值