今天有个朋友突然问我java中成员的执行顺序,自己之前是有写过相应的demo的,今天有碰到不他懂的伙计问,重新写下,顺便自己也写下博客,来做记录,也方便以后有疑问的朋友查看。
首先:java中类的成员可分为四种,分别是初始化代码块、构造函数、成员变量、方法;其中初始化代码块又可分而为静态代码块,即被static修饰的代码块,又可分为普通的代码块即默认的代码块,但是初始化代码块仅能被static来修饰。
其次:来说今天的主题,成员的执行顺序的问题。
经过验证,他们执行的顺序如下:
静态代码块---》普通代码块--》-构造函数---》静态方法---》普通方法
另一个类的方法是类似的,执行结果如下:
看到结果,以上仅是静态代码块,代码块和方法在非继承关系的类中打印出结果,和相应的顺序。在继承关系的顺序,另作一篇,如果有什么问题还请指出。