Java学习笔记之static关键字。

时间:2021-07-17 13:37:47

static,静态的,可以用来修饰属性、方法、代码块(初始化块)、内部类

1.修饰属性:类变量,

1.1由类创建的所有的对象,都共用这一个属性。
1.2当其中一个对象对此属性进行修改,会修改其它对象此属性的调用。
1.3类变量随着类的加载而加载,而且独一份。
1.4静态的变量可以直接通过“类.类变量”的形式调用。

1.5类变量的加载要早于对象。所以当有了对象以后,就可以通过“对象.类变量”使用,但是“类.实例变量”是不行的。

1.6类变量存在于静态域中。

2.修饰方法:类方法。

2.1随着类的加载而加载,在内存中独一份。
2.2可以直接通过“类.类方法”的方式来调用。

2.3静态方法内部可以调用静态变量以及类内其它的静态方法(生命周期一样),不能调用实例变量以及实例方法。反之非静态的方法可以调用静态的方法或者静态变量。

>静态方法内不可以有this或super关键字!

注:静态的结构(静态变量、静态方法、代码块、内部类)的声明周期要早于非静态的结构,同时被回收的时间也要晚于非静态的结构。