static

static关键字用于修饰类级别的变量和方法,它们在类加载时初始化,并可通过类名直接访问。静态变量在所有对象间共享,适合于所有对象属性相同的情况,以节省内存。静态方法不依赖对象实例,常用于工具类。静态代码块在类加载时执行一次,常用于初始化设置。实例变量和方法与对象关联,空引用调用实例变量才会抛出NullPointerException。
摘要由CSDN通过智能技术生成

static:

1.static翻译为"静态"

2.所有static关键字修饰的都是类相关的,类级别的

3.所有static修饰的,都采用"类名."的方式访问。可以使用"引用."的方式,但不建议。(困惑)

4.static修饰的变量、方法为静态变量、静态方法

变量的分类:

变量在方法体中是局部变量,在方法体外为成员变量。

成员变量又可分为实例变量和静态变量。

static所修饰的变量在类加载的时候就初始化加载运行了。

什么时候变量声明为实例,什么时候为静态?

如果这个类型的所有对象的某个属性值都一样的,不建议定义为实例变量,浪费内存空间。定义为静态变量只会在方法去中保留一份,节省空间。

空引用调用静态变量时实际上还是使用的类名调用的方式。所以空指针异常只在"空指针"访问"实例"的时候才会出现。

什么时候定义实例方法?

当方法体中直接访问了实例变量,这个方法一定是实例方法。工具类一般是静态方法。(不需要new对象,直接采用类名调用,极其方便)

静态代码块:

语法:

static{

    java语句;

    java语句;

}

1.静态代码块在类加载时执行,且只执行一次。

2.在main方法执行前执行。

3.一般按照自上而下的顺序执行。

(使用情况少,如当需要将类加载的日志信息记录时,可以写在静态代码块中)

实例语句块:

语法:

{

    java语句;

    java语句;

}

在构造方法执行之前自动执行,也是SUN公司准备的特殊实际,叫对象创建时机。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值