作用,当许多该类的实体对象的某一属性值相同时,则可以在声明时在该属性前加上static被该类创建的实体对象共享,以节约对内存空间的占用,此时该属性的值不存储在堆内存中。
被静态修饰符修饰的成员除了可以用对象调用,也可以用类名调用。
静态修饰符修饰的成员存储在方法区/共享区/数据区
class Person{
String name;//成员变量或实例变量
static String country="CN";//类变量或静态成员变量
}
静态t特点
随着类的加载而加载,随着类的消失而消失他的生命周期最长
被所有对象共享,
优先于对象存在
可以直接被类名调用
因为静态变量随类的消失而消失,虽然静态变量可以节省内存开销,但是他的生命周期与类一样,不像非静态变量那样在对象消失后则消失。
静态方法只能访问静态成员,非静态方法可以访问静态成员,静态方法中不可以定义this,super关键字,因为静态优先于对象存在