静态成员:
1、静态属性
2、静态方法
3、静态代码块
被static修饰的内容生命周期被提升到类(可以直接使用类名调用)
static修饰的内容随着类加载被加载到静态存储区
-
被static修饰的属性与方法的特点
- 优先于对象存在于JVM虚拟机中(可以通过类名访问)
- 生命周期提升到类,被说有对象共享
创建对象的完整过程:
- 类加载:执行静态代码块,将静态属性静态方法加载到静态存储区
- 在栈中开辟空间并命名,用于存放对象地址
- 创建对象:
(1)在堆中开辟空间
(2)加载成员属性和成员方法
(3)执行代码块
(4)执行构造方法
(5)生成地址,并赋值给栈中的空间