如果这个类的所有对象的属性值都是一样的,不建议定义为实例变量,会浪费内存空间;建议定义为静态变量,在方法区中只保留一份,节省内存的开销;
对象级别:一个对象对应一份数据,各个对象都可以不同。对象级别的变量不需要static。类级别: 所有对象对应一份数据,各个对象都一样。类级别的变量需要static。
静态变量可以使用引用去访问,但实际上在执行过程中,引用所指向的对象并没有参与,如果是空引用访问实例变量,程序一定会发生空指针异常,但是如果用空引用访问静态变量,程序并没有发生空指针异常,所以通过引用访问静态变量实际上还是直接通过类去访问的。