什么是类变量?
类变量是该类的所有对象共享的变量,任何一个该类的对象去访问它时,
取到的都是相同的值,同样任何一个该类的方法去修改它时,修改的也是同一个变量。
如何定义类变量?
定义语法:
访问修饰符 static 数据类型 变量名;
如何访问类变量?
类名.类变量名或者对象名.类变量名
什么是类方法?
类方法是属于所有对象实例的,其形式如下:
访问修饰符 static 数据返回类型 方法名() {}
注意:类方法中不能访问非静态变量(非类变量)。
使用:类名.类方法名或者对象名.类方法名
案例:统计学费总和
public class Demo {
public static void main(String[] args) {
Student s1 = new Student(4, "a", 200);
Student s21 = new Student(5, "b", 300);
System.out.println("总学费为:" + Student.getTotalFee());
}
}
class Student {
int age;
String name;
int fee;
static int totalFee = 0;
public Student(int age, String name, int fee) {
this.age = age;
this.name = name;
totalFee += fee;
}
// 返回总学费[这是一个类方法(静态方法)]
// java中规则:类变量原则上用类方法去访问
public static int getTotalFee() {
return totalFee;
}
}
执行结果:
类变量与实例变量的区别:
1、加上static称为类变量或静态变量,否则称为实例变量。
2、类变量是与类相关的,公共的属性。
3、实例变量属于每个对象个体的属性。
4、类变量可以通过类名直接访问。