问答详情
源自:8-10 Java 中的 static 使用之静态初始化块

求解释 输出先后顺序

帮忙梳理下执行的顺序。

我的理解是  调用show()的 方法   而从代码中可以看出 show() 直接 输出的 是 “姓名:tom , 性别:男, 年龄: 20”    因而我不理解答案中的前三步是从哪里输出的                希望懂的人能解惑 ,   谢谢 

提问者:_Coo1_ 2016-12-13 23:01

个回答

  • jggf
    2016-12-13 23:29:11
    已采纳

    public HelloWorld() { 

    System.out.println("通过构造方法初始化name");

    name = "tom";

    }

        

        // 初始化块

    System.out.println("通过初始化块初始化sex");

    sex = "男";

    }

        

        // 静态初始化块

          static{ 

    System.out.println("通过静态初始化块初始化age");

    age = 20;

    }

    这里   直接从这里 输出了。

  • 慕粉3613113
    2016-12-13 23:29:15

    你在写构造方法和初始化块的时候里面是有输出提示的,当你在创建对象时会调用构造方法,就已经有前三行的输出了,之后调用的show()方法才是你问题里提到的直接输出的内容