java类中静态属性,静态代码块,成员变量,构造方法加载次序

版权声明:未经博主同意,禁止转载 https://blog.csdn.net/weixin_42130471/article/details/85788477

一、如果类还没有被加载: 
1、先执行父类的静态代码块和静态变量初始化,并且静态代码块和静态变量的执行顺序只跟代码中出现的顺序有关。 
2、执行子类的静态代码块和静态变量初始化。 
3、执行父类的实例变量初始化 
4、执行父类的构造函数 
5、执行子类的实例变量初始化 
6、执行子类的构造函数 

二、如果类已经被加载: 
则静态代码块和静态变量就不用重复执行,再创建类对象时,只执行与实例相关的变量初始化和构造方法。

单例模式就利用了静态变量或者静态代码块只加载一次的特点。

猜你喜欢

转载自blog.csdn.net/weixin_42130471/article/details/85788477
今日推荐