static

静态变量

在定义一个类时,只是描述某类事物的特征和行为,并没有产生具体的数据。只有通过new关键字创建创建该对象的实例后,系统才会给每个对象分配空间,存储各自的数据

但有时候,我们希望某些特定的数据在内存中只有一份,而且能够被一个类的所有实例对象共享

静态变量被所有实例所共享,可以使用“类名.变量名”来访问

注意:static只能修饰成员变量,而不能修饰局部变量

public class S {
    public void study() {
        static int num = 123;  //报错
    }
}

静态方法

在不创建对象的情况下就可以调用某个方法,使用“类名 . 静态方法名”访问,在主方法中调用本类的静态方法可以省略类名.,当然也可以使用类的实例对象来访问

注意:在一个静态方法中只能访问用static修饰的成员,原因在于没有被static修饰的成员需要先创建对象才能访问,而静态方法被调用时可以不创建任何对象。(例如:main方法中访问同类中的其他方法,此时其他方法上要加static)

静态代码块

类被加载时,静态代码块会执行,由于类只加载一次,因此静态代码块只执行一次。在程序中,通常使用静态代码块来对类的成员变量进行初始化。

静态内部类

https://blog.csdn.net/chushoufengli/article/details/87721009

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值