HelloWorld hello2 = new HelloWorld();为什么先输出的是num2的情况
这个是Java中的执行顺序的问题了,在类加载的时候,顺序是静态初始块、普通初始块、构造方法这样的顺序执行的,左侧内容中是有讲解的
在程序被调用的时候 该类得到加载 静态函数和变量得到初始化 所以先输出num2
在创建实例的时候 才会调用初始化函数块 然后是相应的构造方法 等。