实在是服了自己,子类初始化调用父类无参构造这种初学者都应该知道的事,我给忘了. 记得当初看书的时候各种概念抄在笔记本上,再上机实践,以为一辈子都不会忘,还是给忘了. 这件事说明了两个问题: 1.我没有保持专注. 2.不管记性好坏都必须要复习. 我们知道在Java中,子类初始化的时候(不管是通过有参构造还是无参构造),如果继承有父类,都会先去调用父类 的无参构造. 这个没有问题,但是如果在父类和子类中都有static代码块和普通代码块,他们的执行先后顺序又是怎样的呢?先来看一段代码: A类 pac…