- 概念
在类中,用static声明的成员变量为静态成员变量,也称为类变量。 类变量的生命周期和类相同,在整个应用程序执行期间都有效。它有如下特点:
- 为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化。
- 对于该类的所有对象来说,static成员变量只有一份。被该类的所有对象共享!!
- 一般用“类名.类属性/方法”来调用。(也可以通过对象引用或类名(不需要实例化)访问静态成员。)
- 在static方法中不可直接访问非static的成员。
核心要点
1. static修饰的成员变量和方法,从属于类。
2. 普通变量和方法从属于对象的。
public class User2 {
int id; // ID
String name; // 名字
String grade; // 年级
# static 修饰的静态变量
static String slogan = "study hard and make progress every day";
public User2(int id,String name) {
this.id = id;
this.name = name;
}
public void say() {
System.out.println("student"+name+"say");
System.out.println(slogan); # 普通方法调用静态变量
}
# 静态方法调用静态变量
public static void speakSlogan() {
System.out.println(slogan);
}
public static void main(String []args) {
User2 student = new User2(666,"费迪南"); # 新建对象student
User2.speakSlogan(); # 类调用丛属的静态方法
User2.slogan = "Self-discipline is my freedom"; # 更改静态变量值
User2.speakSlogan(); # 再次调用静态方法
}
}
网友评论