类的加载
- 父类静态变量初始化
- 子类静态变量初始化
- 父类非静态变量初始化
- 父类构造函数代码执行
- 子类非静态变量初始化
- 子类构造函数执行
- 类加载完成,即类完成对象实例化
代码演示
package com.reflection;
public class Test03 {
public static void main(String[] args) {
C c = new C();
System.out.println(B.b);
System.out.println(C.c);
}
}
class B {
static int b = 10;
static {
System.out.println("B 的静态代码块");
b = 30;
}
public B() {
System.out.println("B 的构造函数");
}
}
class C extends B {
static int c = 100;
static {
System.out.println("C 的静态代码块");
c = 300;
}
public C() {
System.out.println("C的构造函数");
}
}
运行结果: