关于静态初始化块和构造函数

来源:互联网 发布:js转换php时间戳 编辑:程序博客网 时间:2024/05/01 22:56
class Root{static{System.out.println("Root的静态初始化块");}{System.out.println("Root的普通初始化方块");}public Root(){System.out.println("Rootd的无参数构造方法");}}class Mid extends Root {static {System.out.println("Mid的静态初始化块");}{System.out.println("Mid普听初始化块");}public Mid(){System.out.println("Mid的无参数构造方法");}public Mid(String msg){this();System.out.println("Mid的带参数的构造函数,其参数值是:" + msg);}}class Leaf extends Mid{static {System.out.println("Leaf的静态初始化块");}{System.out.println("Leaf的普通初始化块");}public Leaf(){super("我的测试");System.out.println("Leaf的构造函数");} }public class Test{public static void main(String[] args) {new Leaf();}}


输出的结果是是
Root的静态初始化块
Mid的静态初始化块
Leaf的静态初始化块
Root的普通初始化方块
Rootd的无参数构造方法
Mid普听初始化块
Mid的无参数构造方法
Mid的带参数的构造函数,其参数值是:我的测试
Leaf的普通初始化块
Leaf的构造函数