温馨提示×

Constructor Java 的初始化顺序如何

小樊
84
2024-11-30 19:20:49
栏目: 编程语言
Java开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Java中,构造函数的初始化顺序遵循以下规则:

  1. 父类静态变量和静态代码块:首先初始化父类的静态变量和静态代码块。这些只会在类加载时执行一次。静态变量和静态代码块的初始化顺序是根据它们在代码中出现的顺序进行的。

  2. 子类静态变量和静态代码块:接着初始化子类的静态变量和静态代码块。这些也只在类加载时执行一次,且顺序与父类相反。

  3. 父类非静态变量和实例代码块:当创建一个类的实例时,首先初始化父类的非静态变量和实例代码块。这些变量和代码块会根据它们在代码中出现的顺序执行。

  4. 父类构造函数:然后调用父类的构造函数。

  5. 子类非静态变量和实例代码块:接着初始化子类的非静态变量和实例代码块。这些变量和代码块同样会根据它们在代码中出现的顺序执行。

  6. 子类构造函数:最后调用子类的构造函数。

总结一下,初始化顺序是从上到下、从父类到子类,同时静态变量和静态代码块优先于非静态变量和实例代码块执行。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何避免constructor java的错误

0