static关键字
static代表静态的意思,可以用来修饰变量、常量以及方法、代码块,此时 分别叫做静态变量、静态常量、静态方法、静态代码块。
静态成员:
- Static关键字的含义是“静态的”。
- 静态成员︰使用static可以修饰成员变量、常量、方法和代码块。
- 静态成员是全局的,归整个类所有,不依赖特定的对象,是被所有类的对象所共享的。
- 只要类被Java虚拟机加载,就可以根据类名在全局数据域内找到他们访问格式∶类名.静态成员。
静态变量:
- 静态变量,也称为静态成员变量,是指被static关键字修饰的成员变量。
- 静态变量生命周期和类生命周期一致,静态变量被类的所有对象共享。
- 可以通过”类名.静态变量”,也可以通过”对象名.静态变量”进行访问。
- static不可修饰局部变量
静态方法:
- 静态方法是指被static修饰的方法
- 静态方法在类创建后就一直存在,其生命周期和类同步的使用时
- 可以通过类名进行静态方法的调用
- 静态方法不能访问成员方法,但是成员方法可以访问静态方法。
静态方法和成员方法的不同:
- 静态方法可以直接通过“类名.静态方法名“调用。静态方法不能访问本类的成员变量和成员方法,可以访问静态成员和静态方法
- 成员方法可以访问静态成员和非静态成员,包括静态变量、静态常量、静态方法、成员变量和成员方法。
静态代码块{}
使用static修饰的代码块,称为静态代码块,静态代码块在程序执行过程 中,从始至终只执行一次。不使用static修饰的代码块称为构造代码块,在 每次创建对象时默认执行,它的执行在构造方法执行之前。