-
在有继承关系下,静态代码块,静态属性初始化,普通代码块,普通属性初始化,构造方法的调用顺序如下
- 父类的静态代码块和静态属性(优先级一样,按定义顺序执行)
- 子类的静态代码块和静态属性(优先级一样,按定义顺序执行)
- 父类的普通代码块和普通属性初始化(优先级一样,按定义顺序执行)
- 父类的构造方法
- 子类的普通代码块和普通属性初始化(优先级一样,按定义顺序执行)
- 子类的构造方法
-
静态代码块只能调用静态成员(静态属性和静态方法),普通代码块可以调用任意成员
public class CodeBlockDetail03 {
public static void main(String[] args) {
new BBB();
}
}
class AAA {
{
System.out.println