1、静态成员变量的特点。
static 【函数类型】【变量名】
static定义的变量属于类级别的变量,不是对象级别的变量,因此调用的时候可采用对象调用,也可以采用类调用。而且所有对象的静态成员变量的值都指向同一份,静态变量一旦修改(类中修改或对象中修改Person.i或者person1.i),那么所有对象的静态变量都要改变。
2、静态函数的特点。
static 【返回值类型】【函数名】
static定义的函数是类层次的函数,调用的时候只能用类名调用(Person.talk()),静态函数中只能引用静态成员变量,引用非静态变量就会报错。
3、静态代码块的特点。
static{
}
静态代码块是在装载这个类的时候就会执行,并不需要调用。(注:一个类要执行,分为两个步骤,首先要把这个类装载到内存、虚拟机当中,其次再解释执行)
静态代码块的作用,为成员变量赋予初始值。