Java程序中的初始化顺序是什么?如静态块,构造器,静态变量,代码块,非静态变量等。要求考虑父类。

解决方案 »

  1.   

    https://bbs.csdn.net/topics/392349070
      

  2.   

    Java程序初始化一般遵循3个原则:
    1.静态对象(变量)由于非静态对象(变量)初始化。其中静态对象(变量)只初始化一次,而非静态对象(变量)可能会初始化很多次
    2.父类优先于子类进行初始化
    3.按照成员变量的定义顺序进行初始化。即使变量定义散布于方法之中,他们依然在任何方法(包括构造函数)被调用前先初始化