java基础——类初始化顺序

类初始化顺序

父类静态变量/静态代码块,子类静态变量/静态代码块,父类变量/代码块/构造,子类变量/代码块/构造

 

 

 

 

 

01    class Parent {
02        private static String hello = "hello";
03        public String world = "world";
04     
05        { //构造代码块
06            System.out.println("Parent的代码块");
07        }
08     
09        public Parent() {
10            System.out.println("Parent的构造方法");
11        }
12     
13        static {//静态代码块
14            System.out.println("Parent的静态代码块");
15        }
16    }
17     
18    class Son extends Parent {
19        private static String hello = "hello";
20        public String world = "world";
21     
22        { //构造代码块
23            System.out.println("Son的代码块");
24        }
25     
26        public Son() {
27            super();
28            System.out.println("Son的构造方法");
29        }
30     
31        static {//静态代码块
32            System.out.println("Son的静态代码块");
33        }
34     
35        public void print() {
36            System.out.println("hello world");
37        }
38    }
 开始执行
Parent的静态代码块
Son的静态代码块
Parent的代码块
Parent的构造方法
Son的代码块
Son的构造方法
hello world

 

posted @ 2021-01-08 15:22  三灶龙都88  阅读(71)  评论(0)    收藏  举报