java里static变量和非static变量的区别
in Java知识速查 with 0 comment

java里static变量和非static变量的区别

in Java知识速查 with 0 comment

1.static 修饰的变量称为类变量或全局变量或成员变量,在类被加载的时候成员变量即被初始化,与类关联,只要类存在,static变量就存在。

2.一个static变量单独划分一块存储空间,不与具体的对象绑定在一起,该存储空间被类的各个对象所共享。

也就是说当声明一个对象是,并不产生static变量的拷贝,而是该类所有的实例对象共用同一个static变量。

3.非static修饰的成员变量是在对象new出来的时候划分存储空间,是与具体的对象绑定的,该成员变量仅为当前对象所拥有的。

4.对象在引用成员变量是直接通过类名.变量名调用,对象在引用实例变量时只能通过对象名.变量名调用。

5.在类中调用成员变量时直接调用或者以类名.变量名方式调用,实例变量则用this或者直接调用。

Responses