staic(静态)变量和非静态变量的区别?
- 存储位置不同
Static变量:方法区
非静态变量:堆中
- 内存分配空间不同
Static变量:第一次加载的时候
非静态变量:创建对象的时候
- 调用方法不同
Static变量:通过类名调用,也可以通过对象名调用
非静态变量:通过对象名调用
- 生命周期不同
Static变量:和类的生命周期相同
非静态变量: 和所属对象相同
Static变量:方法区
非静态变量:堆中
Static变量:第一次加载的时候
非静态变量:创建对象的时候
Static变量:通过类名调用,也可以通过对象名调用
非静态变量:通过对象名调用
Static变量:和类的生命周期相同
非静态变量: 和所属对象相同