1. 什么时候需要使用类变量
    • 当我们需要让某个类的所有对象都共享一个变量时,就可以考虑使用类变量(静态变量);
    • 比如:定义学生类,统计所有学生共交多少钱。
    1. 类变量与实例变量(普通属性)区别
    • 类变量是该类的所有对象共享的,而实例变量是每个对象独享的。
    1. 加上static称为类变量或静态变量,否则称为实例变量/普通变量/非静态变量
    2. 类变量可以通过类名.类变量名或者对象名.类变量名来访问,但java设计者推荐

    我们使用类名.类变量名方式访问。【前提是满足访问修饰符的访问权限和范围】

    1. 实例变量不能通过类名.类变量名的方式访问。
    2. 类变量是在类加载时就初始化了,也就是说,即使你没有创建对象,只要类加载了,就可以使用类变量了。
    3. 类变量的使用周期是随类的加载开始的,随着类消亡而销毁。 ```java package test;

    public class Main { public static void main(String[] args) { B b = new B(); //实例变量不能通过类名.类变量名的方式访问。 //System.out.println(B.n1);//报错!!! System.out.println(B.n2);

    1. //静态变量是类加载的时候,就创建了,所以我们没有创建对象实例
    2. //也可以通过类名.类变量名来访问
    3. System.out.println(C.address);
    4. }

    }

    class B { public int n1 = 100; public static int n2 = 200; }

    class C { public static String address = “北京”; } ``` image.png