静态代码块优先级问题

package DAY08.Code_block.Code_blockDetail;
/*
1.父类的静态代码块和静态属性(优先级一样,按定义顺序执行)
2.子类的静态代码块和静态属性(优先级一样,按定义顺序执行)
3.父类的普通代码块和普通属性初始化(优先级一样,按定义顺序执行)
4.父类的构造方法
5.子类的普通代码块和普通属性初始化(优先级一样,按定义顺序执行)
6.子类的构造方法
 */
public class CodeblockDetail04 {
    public static void main(String[] args) {
        new B02();
    }
}
class A02 { //父类
    private static int n1 = getVal01();
    static {
        System.out.println("A02 的一个静态代码块..");//(2)
    }

    {
        System.out.println("A02 的第一个普通代码块..");//(5)
    }
    public int n3 = getVal02();//普通属性的初始化
    public static int getVal01() {
        System.out.println("getVal01");//(1)
        return 10;
    }
    public int getVal02() {
        System.out.println("getVal02");//(6)
        return 10;
    }
    public A02() {//构造器
    //隐藏
    //super()
    //普通代码和普通属性的初始化......
    System.out.println("A02 的构造器");//(7)
    }
}
    class B02 extends A02 { //
        private static int n3 = getVal03();
        static {
            System.out.println("B02 的一个静态代码块..");//(4)
        }
        public int n5 = getVal04();

        {
            System.out.println("B02 的第一个普通代码块..");//(9)
        }
        public static int getVal03() {
            System.out.println("getVal03");//(3)
            return 10;
        }
        public int getVal04() {
            System.out.println("getVal04");//(8)
            return 10;
        }
//一定要慢慢的去品.. public B02() {//构造器
//隐藏了
//super()
//普通代码块和普通属性的初始化... System.out.println("B02 的构造器");//(10)
// TODO Auto-generated constructor stub
public B02() {//构造器
    //隐藏了
    //super()
    //普通代码块和普通属性的初始化...
    System.out.println("B02 的构造器");//(10)
    // TODO Auto-generated constructor stub
}
    }