1、静态成员(static修饰变量、常量和方法)
由static修饰的变量、常量和方法被称为静态变量、常量和方法,它们统称为静态成员。静态成员属于类所有,可在本类或其他类中使用如下格式来调用静态成员:
类名.静态类成员
static成员变量的初始化顺序按照定义的顺序进行初始化。
(1)static变量
静态变量和非静态变量的区别是:静态变量只会在类初次加载时被创建,在内存中只有一个副本,它被所有的对象所共享;非静态变量是在创建对象时初始化,在内存中存在多个副本,是属于某个对象的,各个对象的非静态变量互不影响。因此,static变量常用与对象之间需要共享值的情景下。
(2)static常量
与static变量相类似。
(3)static方法
static方法称为静态方法,也被称为没有“this”的方法,因为它仅仅通过类来调用,不需要依赖对象进行访问,只要类被加载了就可进行访问。
静态方法的规定:
- 在静态方法中不可以使用this关键字;
- 在静态方法中不可以直接调用非静态变量和非静态方法。
- 在非静态方法中是可以访问静态成员的。
如果想在不创建对象的情况下调用某个方法,则可以通过将这个方法设置为static来实现。
2、static修饰代码块
static修饰的代码块称